Bessere Arbeitsweise -> Keine Exceptions über Service thrown, lieber kapseln

kleine bugs
This commit is contained in:
2024-05-21 16:05:49 +02:00
parent 5b30f4ad14
commit 88e0edcc76
6 changed files with 43 additions and 24 deletions

View File

@@ -8,12 +8,12 @@
<basicHttpBinding>
<binding name="BeWoBasicEndpoint" closeTimeout="00:05:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true" messageEncoding="Text">
<readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
<security mode="Transport"/>
<security mode="None"/>
<!-- mode="Transport" für echten Server und "None" sonst-->
</binding>
<binding name="BeWoStreamingEndpoint" receiveTimeout="10:10:00" sendTimeout="10:01:00" maxBufferSize="65536" maxReceivedMessageSize="67108864" transferMode="StreamedRequest" useDefaultWebProxy="true" messageEncoding="Text">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
<security mode="Transport"/>
<security mode="None"/>
<!-- mode="Transport" für echten Server -->
</binding>
<binding name="QueryServiceEndpoint" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true" messageEncoding="Text">

View File

@@ -59,6 +59,9 @@ namespace BeWoLauncher.Logic.Behavior
DownloadController.Start();
DownloadController.Manager.GetUpdatePlan();
if (!DownloadController.Manager.UpdatePlanResponse.Successful)
throw DownloadController.Manager.UpdatePlanResponse.Exception;
if (DownloadController.Manager.UpdatePlanResponse.HasToDo())
{
ViewBehavior.ShowInfo();

View File

@@ -46,7 +46,7 @@ namespace BeWoLauncher.View.Frames
{
txtLoc.Text = value;
var size2 = DownloadController.UpdateDiskSpace(LauncherPaths.ActualPlanerLocation).Split(' ');
var size2 = DownloadController.UpdateDiskSpace(LauncherPaths.LoginSelectionPlanerLocation).Split(' ');
if (size2.Length > 1)
{

View File

@@ -27,7 +27,7 @@ namespace BeWo.Service.ServiceUtils.Update
{
try
{
return Document.SelectSingleNode($"/config/versions/tenant[@id='{Tenant}']/version").InnerXml;
return Document.SelectSingleNode($"/config/versions/tenant[@id='{Tenant}']/version")?.InnerXml;
}
catch (Exception)
{

View File

@@ -25,38 +25,48 @@ namespace BeWo.Service.ServiceUtils.Update
public static UpdatePlanResponse GetUpdatePlanResponse(UpdatePlanRequest request, string tenant)
{
var path = ServerFilePaths.VersionsFilePath;
_Response = new UpdatePlanResponse();
_Response.Successful = false;
var reader = new UpdateConfigReader(path, tenant);
_Tenant = tenant;
_Request = request;
_Response = new UpdatePlanResponse
try
{
CurrentPackage = new UpdatePlanDC
var path = ServerFilePaths.UpdateConfigPath;
var reader = new UpdateConfigReader(path, tenant);
_Tenant = tenant;
_Request = request;
_Response.CurrentPackage = new UpdatePlanDC
{
DefaultVersion = reader.GetDefaultVersion(),
TenantVersion = reader.GetSpecificVersion()
}
};
};
_Version = _Response.CurrentPackage.Version;
_Version = _Response.CurrentPackage.Version;
// Lädt komplettes Paket ohne Hash
CalcFullPackage();
// Lädt komplettes Paket ohne Hash
CalcFullPackage();
// Lade Hash Werte
_Response.CurrentPackage.LoadHash();
// Lade Hash Werte
_Response.CurrentPackage.LoadHash();
CalcFilesToRequest();
CalcFilesToRequest();
if (!_Request.ApplyFolderIsEmpty)
CalcFilesToDeleteInApply();
if (!_Request.ApplyFolderIsEmpty)
CalcFilesToDeleteInApply();
if (!_Request.DownloadFolderIsEmpty)
CalcFilesToApplyInDownload();
if (!_Request.DownloadFolderIsEmpty)
CalcFilesToApplyInDownload();
CalcDownloadSize();
CalcDownloadSize();
_Response.Successful = true;
}
catch(Exception e)
{
_Response.Exception = e;
_Response.Successful = false;
}
return _Response;
}

View File

@@ -17,6 +17,12 @@ namespace BS.SharedLauncher.DataContract
}
[DataMember]
public bool Successful { get; set; }
[DataMember]
public Exception Exception { get; set; }
[DataMember]
public UpdatePlanDC CurrentPackage { get; set; }