jj: license

This commit is contained in:
Jonathan Jenne
2019-02-05 13:36:52 +01:00
parent 70ceeeb51a
commit 54af1a770b
4 changed files with 133 additions and 66 deletions

View File

@@ -1,4 +1,5 @@
Imports System.IO
Imports System.Xml
Imports System.Xml.Serialization
Imports DigitalData.Modules.Logging
@@ -18,6 +19,21 @@ Public Class LicenseFile
Return oSerializer
End Function
Public Function TestFileValid(Optional FileName As String = LICENSE_FILENAME) As Boolean
Try
Dim oSerializer = GetSerializer()
Dim oFilePath As String = IO.Path.Combine(Path, FileName)
Using oReader As New StreamReader(oFilePath),
oXmlReader = XmlReader.Create(oReader)
Return oSerializer.CanDeserialize(oXmlReader)
End Using
Catch ex As Exception
_Logger.Error(ex)
Throw ex
End Try
End Function
Public Function LoadFile(Optional FileName As String = LICENSE_FILENAME) As LicenseSchema
Try
Dim oSerializer = GetSerializer()
@@ -35,13 +51,27 @@ Public Class LicenseFile
End Try
End Function
Public Sub SaveFile(License As LicenseSchema, Optional FileName As String = LICENSE_FILENAME)
Public Function Serialize(License As LicenseSchema) As Byte()
Try
Dim oSerializer = GetSerializer()
Using oStream = New FileStream(FileName, FileMode.Create, FileAccess.Write)
Using oStream = New MemoryStream()
oSerializer.Serialize(oStream, License)
oStream.Flush()
Return oStream.ToArray()
End Using
Catch ex As Exception
_Logger.Error(ex)
Throw ex
End Try
End Function
Public Sub SaveFile(License As LicenseSchema, Optional FileName As String = LICENSE_FILENAME)
Try
Dim oBytes = Serialize(License)
Dim oFilePath As String = IO.Path.Combine(Path, FileName)
Using oFileStream = New FileStream(oFilePath, FileMode.Create, FileAccess.Write)
oFileStream.Write(oBytes, 0, oBytes.Length)
End Using
Catch ex As Exception
_Logger.Error(ex)