v6 Migration guide
This article describes breaking changes in .NET Library introduced in version 6.
To migrate to version 6:
- replace all usings such as
NineDigit.eKasa.Core.*
,NineDigit.eKasa.Core.Data
with single namespaceNineDigit.eKasa
. - class
NineDigit.eKasa.Core.Printing.Models.Token
has been renamed toNineDigit.eKasa.PrintToken
. - class
NineDigit.eKasa.Helpers.EKasaPathHelper
has been renamed toNineDigit.eKasa.EKasaPath
. - replace
CertificateHelper.Create
byCertificate.FromXml
method. - replace
IdentityHelper.Create
byIdentity.FromXml
method.
Name and Namespace changes
All namespaces are unified to NineDigit.eKasa
, so it is no longer required to use multiple using statements.
List of all renamed classes or changed namespaces can be found in table below:
Original name/namespace (v5) | New name/namespace (v6) |
---|---|
Microsoft.EntityFrameworkCore.ForeignKeyConstraintException |
NineDigit.eKasa.ForeignKeyConstraintException |
Microsoft.EntityFrameworkCore.UniqueConstraintException |
NineDigit.eKasa.UniqueConstraintException |
NineDigit.eKasa.Core.Constants.PPEKK* |
NineDigit.eKasa.Constants.PPEKK.* |
NineDigit.eKasa.Core.Data.* |
NineDigit.eKasa |
NineDigit.eKasa.Core.Data.Helpers.TimeZoneHelper |
NineDigit.eKasa.TimeZoneHelper |
NineDigit.eKasa.Core.Data.ORPCodeEqualityComparer |
NineDigit.eKasa.ORPCode.EqualityComparer |
NineDigit.eKasa.Core.Data.Queries.* |
NineDigit.eKasa.* |
NineDigit.eKasa.Core.Data.Records.* |
NineDigit.eKasa.* |
NineDigit.eKasa.Core.Data.Validation.* |
NineDigit.eKasa.Validation.* |
NineDigit.eKasa.Core.Exceptions.* |
NineDigit.eKasa.* |
NineDigit.eKasa.Core.Extensions.* |
NineDigit.eKasa.* |
NineDigit.eKasa.Core.Helpers.DecimalHelper |
NineDigit.eKasa.DecimalExtensions |
NineDigit.eKasa.Core.Helpers.IAsyncLock |
NineDigit.eKasa.Threading.IAsyncLock |
NineDigit.eKasa.Core.Helpers.SecureStringHelper |
NineDigit.eKasa.SecureStringHelper |
NineDigit.eKasa.Core.Helpers.SecureStringHelper.Create(string) |
NineDigit.eKasa.SecureStringHelper.FromString(string) |
NineDigit.eKasa.Core.Helpers.SecureStringHelper.Decrypt(SecureString) |
NineDigit.eKasa.SecureStringHelper.ToString(SecureString) |
NineDigit.eKasa.Core.Helpers.ValidationHelper |
NineDigit.eKasa.Validation.ValidationHelper |
NineDigit.eKasa.Core.Helpers.WaitHandleHelper |
NineDigit.eKasa.Threading.WaitHandleHelper |
NineDigit.eKasa.Core.Printing.* |
NineDigit.eKasa.* |
NineDigit.eKasa.Core.Printing.Models.Token |
NineDigit.eKasa.PrintToken |
NineDigit.eKasa.Core.Printing.PrinterNameEqualityComparer |
NineDigit.eKasa.Printing.PrinterName.EqualityComparer |
NineDigit.eKasa.Core.Resources.ValidationMessages |
NineDigit.eKasa.Resources.ValidationMessages |
NineDigit.eKasa.Core.Services.* |
NineDigit.eKasa.* |
NineDigit.eKasa.Core.Services.IStorageEnumerator |
NineDigit.eKasa.Storage.IStorageEnumerator |
NineDigit.eKasa.Core.Validation.* |
NineDigit.eKasa.Validation.* |
NineDigit.eKasa.Core.Validation.Extensions.IValidatorExtensions |
NineDigit.eKasa.Validation.IValidatorExtensions |
NineDigit.eKasa.Core.Validation.Helpers.Validator |
NineDigit.eKasa.Validation.Validator |
NineDigit.eKasa.Factories.CertificateHelper.Create(Stream, SecureString) |
NineDigit.eKasa.Certificate.FromXml(Stream, SecureString) |
NineDigit.eKasa.Factories.CertificateHelper.Create(string, SecureString) |
NineDigit.eKasa.Certificate.FromXml(string, SecureString) |
NineDigit.eKasa.Factories.IdentityHelper.Create(Stream, bool) |
NineDigit.eKasa.Identity.FromXml(Stream, bool) |
NineDigit.eKasa.Factories.IdentityHelper.Create(string, bool) |
NineDigit.eKasa.Identity.FromXml(string, bool) |
NineDigit.eKasa.Helpers.EKasaPathHelper |
NineDigit.eKasa.EKasaPath |
NineDigit.eKasa.Infrastructure.Storage.Verification.Exceptions.StorageVerificationException |
NineDigit.eKasa.Storage.Verification.StorageVerificationException |
NineDigit.eKasa.Storage.Indexing.Exceptions.IndexTableIntegrityException |
NineDigit.eKasa.Storage.Indexing.IndexTableIntegrityException |
NineDigit.eKasaClient.Exceptions.EKasaFaultException |
NineDigit.eKasaClient.EKasaFaultException |
NineDigit.eKasaClient.Exceptions.EKasaRegistrationException |
NineDigit.eKasaClient.EKasaRegistrationException |
System.IDeepCloneable |
NineDigit.eKasa.IDeepCloneable |
System.IDeepCloneable<T> |
NineDigit.eKasa.IDeepCloneable<T> |
Internalized classes
Access modifiers was changed to internal
for all classes, that are not intended for public use.
List of affected classes:
NineDigit.eKasa.Application.Domain.IReadOnlyRegisterTokenQueue
NineDigit.eKasa.Core.Data.Comparers.ReferenceEqualityComparer
NineDigit.eKasa.Core.Data.Comparers.RegistrationRequestDataEqualityComparer
NineDigit.eKasa.Core.Data.RegisterReceiptResult.Create(ReceiptRegistrationRequest, IEKasaClientResponse<ReceiptRegistrationResult>)
NineDigit.eKasa.Core.Data.SubmitAsyncHandler(RegistrationRequest, CancellationToken)
NineDigit.eKasa.Core.Data.SubmitAsyncHandler<TRequest, TResult>(TRequest, CancellationToken)
NineDigit.eKasa.Core.Extensions.IInternetConnectivityMonitorExtensions
NineDigit.eKasa.Core.Extensions.ReceiptRegistrationRequestReceiptExtensions
NineDigit.eKasa.Core.Extensions.RegisterRequestStateExtensions
NineDigit.eKasa.Core.Helpers.CryptoHelper
NineDigit.eKasa.Core.Helpers.DateTimeHelper
NineDigit.eKasa.Core.Helpers.DateTimeOffsetHelper
NineDigit.eKasa.Core.Helpers.SecureStringHelper.Decrypt(SecureString, Action<string>)
NineDigit.eKasa.Core.Helpers.SecureStringHelper.Decrypt<T>(SecureString, Action<string, T>)
NineDigit.eKasa.Core.Helpers.TimeoutHelper
NineDigit.eKasa.Core.IEKasaClient
NineDigit.eKasa.Core.IEKasaClientRequest
NineDigit.eKasa.Core.IEKasaClientRequest<TResult>
NineDigit.eKasa.Core.IEKasaClientResponse
NineDigit.eKasa.Core.IEKasaClientResponse<TResult>
NineDigit.eKasa.Core.IEKasaClientResponseExtensions
NineDigit.eKasa.Core.IEKasaClientResponseExtensions.EnsureIsSuccessful(this IEKasaClientResponse)
NineDigit.eKasa.Core.IEKasaMessage
NineDigit.eKasa.Core.Printing.IPrinter
NineDigit.eKasa.Core.Printing.IPrinterProvider
NineDigit.eKasa.Core.Printing.NonfiscalReceiptPrintContext
NineDigit.eKasa.Core.Printing.ReceiptCopyPrintContext
NineDigit.eKasa.Core.Printing.ReceiptPrintContext
NineDigit.eKasa.Core.Printing.RequestsPrintContext
NineDigit.eKasa.Core.RegisterStateExtensions
NineDigit.eKasa.Core.Services.DateTimeProvider
NineDigit.eKasa.Core.Services.EuropeBratislavaDateTimeProvider
NineDigit.eKasa.Core.Services.ICashDrawerService
NineDigit.eKasa.Core.Services.ICertificateRecordRepository
NineDigit.eKasa.Core.Services.IDateTimeProvider
NineDigit.eKasa.Core.Services.IIdentityRecordRepository
NineDigit.eKasa.Core.Services.IMemoryFileStreamer
NineDigit.eKasa.Core.Services.IPrinterStatusProvider
NineDigit.eKasa.Core.Services.IProductInfoProvider
NineDigit.eKasa.Core.Services.IReceiptNumberProvider
NineDigit.eKasa.Core.Services.IRecordRepository
NineDigit.eKasa.Core.Services.IRecordRepositoryConnection
NineDigit.eKasa.Core.Services.IRegisterTokenQueueProcessor
NineDigit.eKasa.Core.Services.ISwIdProvider
NineDigit.eKasa.Core.Services.MemoryRecordRepository
NineDigit.eKasa.Core.Services.OffsetStopwatch
NineDigit.eKasa.Core.X509Certificate2Extensions
NineDigit.eKasa.Helpers.EKasaPathHelper.GetAbsoluteFilePath(string)
NineDigit.Validation.Extensions.IValidatableObjectExtensions
System.Net.WebRequestExtensions
System.ObjectExtensions
System.ObjectExtensions.ToInvariantString(this IFormattable, string)
System.Security.Cryptography.X509Certificates.X500DistinguishedNameExtensions
System.Security.Cryptography.X509Certificates.X509CertificateCollectionExtensions
System.TimeSpanExtensions
NuGet composition
- Libraries for accessing CHDU devices (
NineDigit.ChduTech
andNineDigit.ChduLite
) became separate NuGet packages. NineDigit.eKasa.Core.dll
is merged withNineDigit.eKasa.dll
.NineDigit.eKasa
NuGet package no longer contains two DLL files.