From de94d788e9a47432a7630a8215896b8dd3628599 Mon Sep 17 00:00:00 2001 From: vnugent Date: Sun, 8 Jan 2023 16:01:54 -0500 Subject: Reorder + analyzer cleanup --- Utils/src/Resources/BackedResourceBase.cs | 79 ------------------------------- 1 file changed, 79 deletions(-) delete mode 100644 Utils/src/Resources/BackedResourceBase.cs (limited to 'Utils/src/Resources/BackedResourceBase.cs') diff --git a/Utils/src/Resources/BackedResourceBase.cs b/Utils/src/Resources/BackedResourceBase.cs deleted file mode 100644 index 0a2e1e3..0000000 --- a/Utils/src/Resources/BackedResourceBase.cs +++ /dev/null @@ -1,79 +0,0 @@ -/* -* Copyright (c) 2022 Vaughn Nugent -* -* Library: VNLib -* Package: VNLib.Utils -* File: BackedResourceBase.cs -* -* BackedResourceBase.cs is part of VNLib.Utils which is part of the larger -* VNLib collection of libraries and utilities. -* -* VNLib.Utils is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published -* by the Free Software Foundation, either version 2 of the License, -* or (at your option) any later version. -* -* VNLib.Utils is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with VNLib.Utils. If not, see http://www.gnu.org/licenses/. -*/ - -using System; -using System.Text.Json; -using System.Runtime.CompilerServices; - -namespace VNLib.Utils.Resources -{ - /// - /// A base class for a resource that is backed by an external data store. - /// Implements the interfaceS - /// - public abstract class BackedResourceBase : IResource - { - /// - public bool IsReleased { get; protected set; } - - /// - /// Optional to be used when serializing - /// the resource - /// - internal protected virtual JsonSerializerOptions? JSO { get; } - - /// - /// A value indicating whether the instance should be deleted when released - /// - protected bool Deleted { get; set; } - /// - /// A value indicating whether the instance should be updated when released - /// - protected bool Modified { get; set; } - - /// - /// Checks if the resouce has been disposed and raises an exception if it is - /// - /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] - protected void Check() - { - if (IsReleased) - { - throw new ObjectDisposedException("The resource has been disposed"); - } - } - - /// - /// Returns the JSON serializable resource to be updated during an update - /// - /// The resource to update - protected abstract object GetResource(); - - /// - /// Marks the resource for deletion from backing store during closing events - /// - public virtual void Delete() => Deleted = true; - } -} \ No newline at end of file -- cgit