Loading INAF.Apps.Uwp.SLabDataManager/App.xaml.cs +1 −0 Original line number Diff line number Diff line Loading @@ -127,6 +127,7 @@ namespace INAF.Apps.Uwp.SLabDataManager .AddSingleton<ContinuumSpectraContainer>() .AddSingleton<FitMethodsHelper>() .AddSingleton<Logger>(logger) .AddSingleton<PermissionsHelper>() .AddSingleton<RecentFilesHelper>() .AddSingleton<UserControlsHelper>() .AddSingleton<RemoteOperationsRepository>() Loading INAF.Apps.Uwp.SLabDataManager/Assets/xml/remoteoperations.xml +4 −0 Original line number Diff line number Diff line Loading @@ -2,10 +2,12 @@ <remoteOperationsData> <baseUrl>http://localhost:81</baseUrl> <operationUrls> <!-- ACCOUNT --> <operation type="Authentication">Account/LoginForJwt</operation> <operation type="CheckAlive">AppActions/CheckAlive</operation> <operation type="IsTokenValid">Account/IsTokenValid</operation> <operation type="IsLoginValid">Account/IsLoginValid</operation> <!-- SPECTRA FILES ACTIONS --> <operation type="SaveSpectrumOfTypeAligned">AppSpectraFilesActions/SaveSpectrumOfTypeAligned</operation> <operation type="SaveSpectrumOfTypeContinuumRemoved">AppSpectraFilesActions/SaveSpectrumOfTypeContinuumRemoved</operation> <operation type="SaveAsCopySpectrumOfTypeContinuumRemoved">AppSpectraFilesActions/SaveAsCopySpectrumOfTypeContinuumRemoved</operation> Loading @@ -16,5 +18,7 @@ <operation type="IsSpectrumTypeSavedOnCloud">AppSpectraFilesActions/IsSpectrumTypeSavedOnCloud</operation> <operation type="GetSampleDataValues">AppSpectraFilesActions/GetSampleDataValues</operation> <operation type="DeleteSpectrum">AppSpectraFilesActions/DeleteSpectrum</operation> <!-- USERS --> <operation type="GetUserPermissions">Users/GetUserPermissions</operation> </operationUrls> </remoteOperationsData> No newline at end of file INAF.Apps.Uwp.SLabDataManager/Helpers/PermissionsHelper.cs 0 → 100644 +30 −0 Original line number Diff line number Diff line using INAF.Libraries.NetStandard.SLabCommonModels.Enums; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Permissions; using System.Collections.Generic; using System.Linq; using static INAF.Libraries.NetStandard.SLabCommonModels.Enums.Enums; namespace INAF.Apps.Uwp.SLabDataManager.Helpers { public sealed class PermissionsHelper { public List<PermissionModel> Permissions { get; private set; } public bool isPermissionAvailable(Permissions permission) { return Permissions.Any(x => x.Id == (int)permission); } public void setPermissions(List<PermissionModel> permissions) { Permissions = permissions; } #region wrappers public bool isSaveOnCloudFromAppAllowed() { return isPermissionAvailable(Enums.Permissions.SaveOnCloudFromApp); } #endregion } } INAF.Apps.Uwp.SLabDataManager/Helpers/RemoteOperations/RemoteOperationsManager.cs +1 −54 Original line number Diff line number Diff line using INAF.Libraries.NetStandard.SLabCommonModels.Authentication; using INAF.Libraries.NetStandard.SLabCommonModels.Models.SampleData; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests.SaveSpectrum; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Responses; using INAF.Libraries.Uwp.Logging; using INAF.Libraries.Uwp.Settings; using Newtonsoft.Json; Loading @@ -14,7 +11,7 @@ using static INAF.Libraries.NetStandard.SLabCommonModels.Enums.Enums; namespace INAF.Apps.Uwp.SLabDataManager.Helpers.RemoteOperations { public sealed class RemoteOperationsManager : IDisposable public sealed partial class RemoteOperationsManager : IDisposable { private readonly SettingsHelper settingsHelper; private readonly RemoteOperationsRepository remoteOperationsRepository; Loading Loading @@ -45,56 +42,6 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.RemoteOperations return await getAsync<T>(remoteOperationType); } public async Task<bool> isLoginValidAsync() { return await getAsync(RemoteOperationType.IsLoginValid); } public async Task<bool> isTokenValidAsync() { return await getAsync(RemoteOperationType.IsTokenValid); } public async Task<GenericIdResponseModel> isAnySpectrumTypeSavedOnCloudAsync(IsAnySpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsAnySpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> isSpectrumTypeSavedOnCloudAsync(IsSpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsSpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeAlignedAsync(SaveSpectrumOfTypeAlignedRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeAligned); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeContinuumRemoved); } public async Task<SegmentsProcessingResponseModel> saveAsCopySpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveAsCopySpectrumOfTypeContinuumRemoved); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeRawAsync(SaveSpectrumOfTypeRawRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeRaw); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeSmoothedAsync(SaveSpectrumOfTypeSmoothedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeSmoothed); } public async Task<GenericIdResponseModel> saveSpectrumSampleDataAsync(InfoSelectedValuesModel saveSampleDataRequest) { return await postAsync<GenericIdResponseModel>(saveSampleDataRequest, RemoteOperationType.SaveSpectrumSampleData); } #region private private HttpStringContent getHttpStringContent(Object objectToBeSerialized) { Loading INAF.Apps.Uwp.SLabDataManager/Helpers/RemoteOperations/RemoteOperationsManagerSpectraFileActions.cs 0 → 100644 +52 −0 Original line number Diff line number Diff line using INAF.Libraries.NetStandard.SLabCommonModels.Models.SampleData; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests.SaveSpectrum; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Responses; using System.Threading.Tasks; using static INAF.Libraries.NetStandard.SLabCommonModels.Enums.Enums; namespace INAF.Apps.Uwp.SLabDataManager.Helpers.RemoteOperations { public partial class RemoteOperationsManager { public async Task<GenericIdResponseModel> isAnySpectrumTypeSavedOnCloudAsync(IsAnySpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsAnySpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> isSpectrumTypeSavedOnCloudAsync(IsSpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsSpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeAlignedAsync(SaveSpectrumOfTypeAlignedRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeAligned); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeContinuumRemoved); } public async Task<SegmentsProcessingResponseModel> saveAsCopySpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveAsCopySpectrumOfTypeContinuumRemoved); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeRawAsync(SaveSpectrumOfTypeRawRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeRaw); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeSmoothedAsync(SaveSpectrumOfTypeSmoothedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeSmoothed); } public async Task<GenericIdResponseModel> saveSpectrumSampleDataAsync(InfoSelectedValuesModel saveSampleDataRequest) { return await postAsync<GenericIdResponseModel>(saveSampleDataRequest, RemoteOperationType.SaveSpectrumSampleData); } } } Loading
INAF.Apps.Uwp.SLabDataManager/App.xaml.cs +1 −0 Original line number Diff line number Diff line Loading @@ -127,6 +127,7 @@ namespace INAF.Apps.Uwp.SLabDataManager .AddSingleton<ContinuumSpectraContainer>() .AddSingleton<FitMethodsHelper>() .AddSingleton<Logger>(logger) .AddSingleton<PermissionsHelper>() .AddSingleton<RecentFilesHelper>() .AddSingleton<UserControlsHelper>() .AddSingleton<RemoteOperationsRepository>() Loading
INAF.Apps.Uwp.SLabDataManager/Assets/xml/remoteoperations.xml +4 −0 Original line number Diff line number Diff line Loading @@ -2,10 +2,12 @@ <remoteOperationsData> <baseUrl>http://localhost:81</baseUrl> <operationUrls> <!-- ACCOUNT --> <operation type="Authentication">Account/LoginForJwt</operation> <operation type="CheckAlive">AppActions/CheckAlive</operation> <operation type="IsTokenValid">Account/IsTokenValid</operation> <operation type="IsLoginValid">Account/IsLoginValid</operation> <!-- SPECTRA FILES ACTIONS --> <operation type="SaveSpectrumOfTypeAligned">AppSpectraFilesActions/SaveSpectrumOfTypeAligned</operation> <operation type="SaveSpectrumOfTypeContinuumRemoved">AppSpectraFilesActions/SaveSpectrumOfTypeContinuumRemoved</operation> <operation type="SaveAsCopySpectrumOfTypeContinuumRemoved">AppSpectraFilesActions/SaveAsCopySpectrumOfTypeContinuumRemoved</operation> Loading @@ -16,5 +18,7 @@ <operation type="IsSpectrumTypeSavedOnCloud">AppSpectraFilesActions/IsSpectrumTypeSavedOnCloud</operation> <operation type="GetSampleDataValues">AppSpectraFilesActions/GetSampleDataValues</operation> <operation type="DeleteSpectrum">AppSpectraFilesActions/DeleteSpectrum</operation> <!-- USERS --> <operation type="GetUserPermissions">Users/GetUserPermissions</operation> </operationUrls> </remoteOperationsData> No newline at end of file
INAF.Apps.Uwp.SLabDataManager/Helpers/PermissionsHelper.cs 0 → 100644 +30 −0 Original line number Diff line number Diff line using INAF.Libraries.NetStandard.SLabCommonModels.Enums; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Permissions; using System.Collections.Generic; using System.Linq; using static INAF.Libraries.NetStandard.SLabCommonModels.Enums.Enums; namespace INAF.Apps.Uwp.SLabDataManager.Helpers { public sealed class PermissionsHelper { public List<PermissionModel> Permissions { get; private set; } public bool isPermissionAvailable(Permissions permission) { return Permissions.Any(x => x.Id == (int)permission); } public void setPermissions(List<PermissionModel> permissions) { Permissions = permissions; } #region wrappers public bool isSaveOnCloudFromAppAllowed() { return isPermissionAvailable(Enums.Permissions.SaveOnCloudFromApp); } #endregion } }
INAF.Apps.Uwp.SLabDataManager/Helpers/RemoteOperations/RemoteOperationsManager.cs +1 −54 Original line number Diff line number Diff line using INAF.Libraries.NetStandard.SLabCommonModels.Authentication; using INAF.Libraries.NetStandard.SLabCommonModels.Models.SampleData; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests.SaveSpectrum; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Responses; using INAF.Libraries.Uwp.Logging; using INAF.Libraries.Uwp.Settings; using Newtonsoft.Json; Loading @@ -14,7 +11,7 @@ using static INAF.Libraries.NetStandard.SLabCommonModels.Enums.Enums; namespace INAF.Apps.Uwp.SLabDataManager.Helpers.RemoteOperations { public sealed class RemoteOperationsManager : IDisposable public sealed partial class RemoteOperationsManager : IDisposable { private readonly SettingsHelper settingsHelper; private readonly RemoteOperationsRepository remoteOperationsRepository; Loading Loading @@ -45,56 +42,6 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.RemoteOperations return await getAsync<T>(remoteOperationType); } public async Task<bool> isLoginValidAsync() { return await getAsync(RemoteOperationType.IsLoginValid); } public async Task<bool> isTokenValidAsync() { return await getAsync(RemoteOperationType.IsTokenValid); } public async Task<GenericIdResponseModel> isAnySpectrumTypeSavedOnCloudAsync(IsAnySpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsAnySpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> isSpectrumTypeSavedOnCloudAsync(IsSpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsSpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeAlignedAsync(SaveSpectrumOfTypeAlignedRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeAligned); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeContinuumRemoved); } public async Task<SegmentsProcessingResponseModel> saveAsCopySpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveAsCopySpectrumOfTypeContinuumRemoved); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeRawAsync(SaveSpectrumOfTypeRawRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeRaw); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeSmoothedAsync(SaveSpectrumOfTypeSmoothedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeSmoothed); } public async Task<GenericIdResponseModel> saveSpectrumSampleDataAsync(InfoSelectedValuesModel saveSampleDataRequest) { return await postAsync<GenericIdResponseModel>(saveSampleDataRequest, RemoteOperationType.SaveSpectrumSampleData); } #region private private HttpStringContent getHttpStringContent(Object objectToBeSerialized) { Loading
INAF.Apps.Uwp.SLabDataManager/Helpers/RemoteOperations/RemoteOperationsManagerSpectraFileActions.cs 0 → 100644 +52 −0 Original line number Diff line number Diff line using INAF.Libraries.NetStandard.SLabCommonModels.Models.SampleData; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Requests.SaveSpectrum; using INAF.Libraries.NetStandard.SLabCommonModels.Models.WebApp.Responses; using System.Threading.Tasks; using static INAF.Libraries.NetStandard.SLabCommonModels.Enums.Enums; namespace INAF.Apps.Uwp.SLabDataManager.Helpers.RemoteOperations { public partial class RemoteOperationsManager { public async Task<GenericIdResponseModel> isAnySpectrumTypeSavedOnCloudAsync(IsAnySpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsAnySpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> isSpectrumTypeSavedOnCloudAsync(IsSpectrumTypeSavedOnCloudRequestModel model) { return await postAsync<GenericIdResponseModel>(model, RemoteOperationType.IsSpectrumTypeSavedOnCloud); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeAlignedAsync(SaveSpectrumOfTypeAlignedRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeAligned); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeContinuumRemoved); } public async Task<SegmentsProcessingResponseModel> saveAsCopySpectrumOfTypeContinuumRemovedAsync(SaveSpectrumOfTypeContinuumRemovedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveAsCopySpectrumOfTypeContinuumRemoved); } public async Task<GenericIdResponseModel> saveSpectrumOfTypeRawAsync(SaveSpectrumOfTypeRawRequestModel saveSpectrumRequest) { return await postAsync<GenericIdResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeRaw); } public async Task<SegmentsProcessingResponseModel> saveSpectrumOfTypeSmoothedAsync(SaveSpectrumOfTypeSmoothedRequestModel saveSpectrumRequest) { return await postAsync<SegmentsProcessingResponseModel>(saveSpectrumRequest, RemoteOperationType.SaveSpectrumOfTypeSmoothed); } public async Task<GenericIdResponseModel> saveSpectrumSampleDataAsync(InfoSelectedValuesModel saveSampleDataRequest) { return await postAsync<GenericIdResponseModel>(saveSampleDataRequest, RemoteOperationType.SaveSpectrumSampleData); } } }