diff --git a/Libraries/Esiur/Net/DataLink/PacketFilter.cs b/Libraries/Esiur/Net/DataLink/PacketFilter.cs index 835e166..3972642 100644 --- a/Libraries/Esiur/Net/DataLink/PacketFilter.cs +++ b/Libraries/Esiur/Net/DataLink/PacketFilter.cs @@ -44,7 +44,7 @@ public abstract class PacketFilter : IResource public event DestroyedEvent OnDestroy; - public abstract AsyncReply Trigger(ResourceTrigger trigger); + public abstract AsyncReply Handle(ResourceOperation trigger); public abstract bool Execute(Packet packet); diff --git a/Libraries/Esiur/Net/DataLink/PacketServer.cs b/Libraries/Esiur/Net/DataLink/PacketServer.cs index aff14fb..89b8344 100644 --- a/Libraries/Esiur/Net/DataLink/PacketServer.cs +++ b/Libraries/Esiur/Net/DataLink/PacketServer.cs @@ -67,36 +67,22 @@ public class PacketServer : IResource OnDestroy?.Invoke(this); } - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) { - /* - foreach (var resource in Instance.Children()) - { - - if (resource is PacketFilter) - { - filters.Add(resource as PacketFilter); - } - else if (resource is PacketSource) - { - sources.Add(resource as PacketSource); - } - } - */ foreach (var src in sources) { src.OnNewPacket += PacketReceived; src.Open(); } } - else if (trigger == ResourceTrigger.Terminate) + else if (trigger == ResourceOperation.Terminate) { - // foreach (var src in sources) - // src.Close(); + foreach (var src in sources) + src.Close(); } - else if (trigger == ResourceTrigger.SystemReload) + else if (trigger == ResourceOperation.SystemReload) { foreach (var src in sources) { diff --git a/Libraries/Esiur/Net/DataLink/PacketSource.cs b/Libraries/Esiur/Net/DataLink/PacketSource.cs index a7c3d06..3ed6a70 100644 --- a/Libraries/Esiur/Net/DataLink/PacketSource.cs +++ b/Libraries/Esiur/Net/DataLink/PacketSource.cs @@ -44,7 +44,7 @@ public abstract class PacketSource : IResource } - public abstract AsyncReply Trigger(ResourceTrigger trigger); + public abstract AsyncReply Trigger(ResourceOperation trigger); public abstract bool RawMode diff --git a/Libraries/Esiur/Net/Http/EpOverHttp.cs b/Libraries/Esiur/Net/Http/EpOverHttp.cs index 4afa8f5..f82f7a7 100644 --- a/Libraries/Esiur/Net/Http/EpOverHttp.cs +++ b/Libraries/Esiur/Net/Http/EpOverHttp.cs @@ -30,7 +30,7 @@ public class EpOverHttp : HttpFilter return new AsyncReply(true); } - public override AsyncReply Trigger(ResourceTrigger trigger) + public override AsyncReply Trigger(ResourceOperation trigger) { return new AsyncReply(true); } diff --git a/Libraries/Esiur/Net/Http/EpOvwerWebsocket.cs b/Libraries/Esiur/Net/Http/EpOvwerWebsocket.cs index 6470628..573d63b 100644 --- a/Libraries/Esiur/Net/Http/EpOvwerWebsocket.cs +++ b/Libraries/Esiur/Net/Http/EpOvwerWebsocket.cs @@ -72,7 +72,7 @@ public class EpOvwerWebsocket : HttpFilter } - public override AsyncReply Trigger(ResourceTrigger trigger) + public override AsyncReply Trigger(ResourceOperation trigger) { return new AsyncReply(true); } diff --git a/Libraries/Esiur/Net/Http/HttpFilter.cs b/Libraries/Esiur/Net/Http/HttpFilter.cs index 8cfcc74..d87ec58 100644 --- a/Libraries/Esiur/Net/Http/HttpFilter.cs +++ b/Libraries/Esiur/Net/Http/HttpFilter.cs @@ -46,7 +46,7 @@ public abstract class HttpFilter : IResource } public event DestroyedEvent OnDestroy; - public abstract AsyncReply Trigger(ResourceTrigger trigger); + public abstract AsyncReply Trigger(ResourceOperation trigger); /* public virtual void SessionModified(HTTPSession session, string key, object oldValue, object newValue) diff --git a/Libraries/Esiur/Net/Http/HttpServer.cs b/Libraries/Esiur/Net/Http/HttpServer.cs index ecfc6b4..b77ce35 100644 --- a/Libraries/Esiur/Net/Http/HttpServer.cs +++ b/Libraries/Esiur/Net/Http/HttpServer.cs @@ -291,10 +291,10 @@ public class HttpServer : NetworkServer, IResource */ - public async AsyncReply Trigger(ResourceTrigger trigger) + public async AsyncReply Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) { //var ip = (IPAddress)Instance.Attributes["ip"]; //var port = (int)Instance.Attributes["port"]; @@ -318,16 +318,16 @@ public class HttpServer : NetworkServer, IResource Start(listener); } - else if (trigger == ResourceTrigger.Terminate) + else if (trigger == ResourceOperation.Terminate) { Stop(); } - else if (trigger == ResourceTrigger.SystemReload) + else if (trigger == ResourceOperation.SystemReload) { - await Trigger(ResourceTrigger.Terminate); - await Trigger(ResourceTrigger.Initialize); + await Trigger(ResourceOperation.Terminate); + await Trigger(ResourceOperation.Initialize); } - else if (trigger == ResourceTrigger.SystemInitialized) + else if (trigger == ResourceOperation.SystemInitialized) { filters = await Instance.Children(); } diff --git a/Libraries/Esiur/Net/Sockets/FrameworkWebSocket.cs b/Libraries/Esiur/Net/Sockets/FrameworkWebSocket.cs index 3757671..a37bf91 100644 --- a/Libraries/Esiur/Net/Sockets/FrameworkWebSocket.cs +++ b/Libraries/Esiur/Net/Sockets/FrameworkWebSocket.cs @@ -149,7 +149,7 @@ namespace Esiur.Net.Sockets } - public bool Trigger(ResourceTrigger trigger) + public bool Trigger(ResourceOperation trigger) { return true; } diff --git a/Libraries/Esiur/Net/Sockets/SSLSocket.cs b/Libraries/Esiur/Net/Sockets/SSLSocket.cs index 0098c34..9e28148 100644 --- a/Libraries/Esiur/Net/Sockets/SSLSocket.cs +++ b/Libraries/Esiur/Net/Sockets/SSLSocket.cs @@ -450,7 +450,7 @@ public class SSLSocket : ISocket } } - public bool Trigger(ResourceTrigger trigger) + public bool Trigger(ResourceOperation trigger) { return true; } diff --git a/Libraries/Esiur/Net/Sockets/WSocket.cs b/Libraries/Esiur/Net/Sockets/WSocket.cs index 827c0f0..89d2bd9 100644 --- a/Libraries/Esiur/Net/Sockets/WSocket.cs +++ b/Libraries/Esiur/Net/Sockets/WSocket.cs @@ -177,7 +177,7 @@ public class WSocket : ISocket, INetworkReceiver return sock.Begin(); } - public bool Trigger(ResourceTrigger trigger) + public bool Trigger(ResourceOperation trigger) { return true; } diff --git a/Libraries/Esiur/Net/Tcp/TcpFilter.cs b/Libraries/Esiur/Net/Tcp/TcpFilter.cs index 78a6fb9..011518b 100644 --- a/Libraries/Esiur/Net/Tcp/TcpFilter.cs +++ b/Libraries/Esiur/Net/Tcp/TcpFilter.cs @@ -46,7 +46,7 @@ public abstract class TcpFilter : IResource public event DestroyedEvent OnDestroy; - public abstract AsyncReply Trigger(ResourceTrigger trigger); + public abstract AsyncReply Trigger(ResourceOperation trigger); public virtual bool Connected(TcpConnection sender) { diff --git a/Libraries/Esiur/Net/Tcp/TcpServer.cs b/Libraries/Esiur/Net/Tcp/TcpServer.cs index 92de496..8639b8f 100644 --- a/Libraries/Esiur/Net/Tcp/TcpServer.cs +++ b/Libraries/Esiur/Net/Tcp/TcpServer.cs @@ -66,9 +66,9 @@ public class TcpServer : NetworkServer, IResource TcpFilter[] filters = null; - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) { TcpSocket listener; @@ -82,16 +82,16 @@ public class TcpServer : NetworkServer, IResource } - else if (trigger == ResourceTrigger.Terminate) + else if (trigger == ResourceOperation.Terminate) { Stop(); } - else if (trigger == ResourceTrigger.SystemReload) + else if (trigger == ResourceOperation.SystemReload) { - Trigger(ResourceTrigger.Terminate); - Trigger(ResourceTrigger.Initialize); + Trigger(ResourceOperation.Terminate); + Trigger(ResourceOperation.Initialize); } - else if (trigger == ResourceTrigger.SystemInitialized) + else if (trigger == ResourceOperation.SystemInitialized) { Instance.Children().Then(x => filters = x); } diff --git a/Libraries/Esiur/Net/Udp/UdpFilter.cs b/Libraries/Esiur/Net/Udp/UdpFilter.cs index 4d7c226..d8c0e14 100644 --- a/Libraries/Esiur/Net/Udp/UdpFilter.cs +++ b/Libraries/Esiur/Net/Udp/UdpFilter.cs @@ -47,7 +47,7 @@ public abstract class UdpFilter : IResource public event DestroyedEvent OnDestroy; - public abstract AsyncReply Trigger(ResourceTrigger trigger); + public abstract AsyncReply Trigger(ResourceOperation trigger); public abstract bool Execute(byte[] data, IPEndPoint sender); diff --git a/Libraries/Esiur/Net/Udp/UdpServer.cs b/Libraries/Esiur/Net/Udp/UdpServer.cs index 2d5c73c..b0b301f 100644 --- a/Libraries/Esiur/Net/Udp/UdpServer.cs +++ b/Libraries/Esiur/Net/Udp/UdpServer.cs @@ -177,9 +177,9 @@ public class UdpServer : IResource OnDestroy?.Invoke(this); } - async AsyncReply IResource.Trigger(ResourceTrigger trigger) + async AsyncReply IResource.Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) { var address = IP == null ? IPAddress.Any : IPAddress.Parse(IP); @@ -188,12 +188,12 @@ public class UdpServer : IResource receiver = new Thread(Receiving); receiver.Start(); } - else if (trigger == ResourceTrigger.Terminate) + else if (trigger == ResourceOperation.Terminate) { if (receiver != null) receiver.Abort(); } - else if (trigger == ResourceTrigger.SystemInitialized) + else if (trigger == ResourceOperation.SystemInitialized) { filters = await Instance.Children(); } diff --git a/Libraries/Esiur/Protocol/EpConnection.cs b/Libraries/Esiur/Protocol/EpConnection.cs index 62d1616..5d1ba38 100644 --- a/Libraries/Esiur/Protocol/EpConnection.cs +++ b/Libraries/Esiur/Protocol/EpConnection.cs @@ -1694,13 +1694,13 @@ public partial class EpConnection : NetworkConnection, IStore /// /// Resource trigger. /// - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { _authPacket = new EpAuthPacket(Instance.Warehouse); _packet = new EpPacket(Instance.Warehouse); - if (trigger == ResourceTrigger.Open) + if (trigger == ResourceOperation.Open) { // @TODO: Need a better way to check for initiator or responder if (this.Server != null) diff --git a/Libraries/Esiur/Protocol/EpResource.cs b/Libraries/Esiur/Protocol/EpResource.cs index d5c42d4..ad4cfa1 100644 --- a/Libraries/Esiur/Protocol/EpResource.cs +++ b/Libraries/Esiur/Protocol/EpResource.cs @@ -475,10 +475,10 @@ public class EpResource : DynamicObject, IResource, INotifyPropertyChanged, IDyn /// /// /// - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Handle(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) { this.Instance.PropertyModified += (x) => this.PropertyChanged?.Invoke(this, new ResourcePropertyChangedEventArgs(x.Name)); diff --git a/Libraries/Esiur/Protocol/EpServer.cs b/Libraries/Esiur/Protocol/EpServer.cs index 11c82c0..1119995 100644 --- a/Libraries/Esiur/Protocol/EpServer.cs +++ b/Libraries/Esiur/Protocol/EpServer.cs @@ -124,9 +124,9 @@ public class EpServer : NetworkServer, IResource } - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) { TcpSocket listener; @@ -137,14 +137,14 @@ public class EpServer : NetworkServer, IResource Start(listener); } - else if (trigger == ResourceTrigger.Terminate) + else if (trigger == ResourceOperation.Terminate) { Stop(); } - else if (trigger == ResourceTrigger.SystemReload) + else if (trigger == ResourceOperation.SystemReload) { - Trigger(ResourceTrigger.Terminate); - Trigger(ResourceTrigger.Initialize); + Trigger(ResourceOperation.Terminate); + Trigger(ResourceOperation.Initialize); } return new AsyncReply(true); diff --git a/Libraries/Esiur/Resource/IResource.cs b/Libraries/Esiur/Resource/IResource.cs index f458e3d..5b10c22 100644 --- a/Libraries/Esiur/Resource/IResource.cs +++ b/Libraries/Esiur/Resource/IResource.cs @@ -35,7 +35,8 @@ public delegate bool QueryFilter(T value); public interface IResource : IDestructible { - AsyncReply Trigger(ResourceTrigger trigger); + AsyncReply Handle(ResourceOperation trigger); + AsyncReply Initialize(ResourceContext resourceContext); [NotMapped] [JsonIgnore] diff --git a/Libraries/Esiur/Resource/Resource.cs b/Libraries/Esiur/Resource/Resource.cs index a71a2bd..66338b6 100644 --- a/Libraries/Esiur/Resource/Resource.cs +++ b/Libraries/Esiur/Resource/Resource.cs @@ -38,9 +38,9 @@ public class Resource : IResource OnDestroy?.Invoke(this); } - public virtual AsyncReply Trigger(ResourceTrigger trigger) + public virtual AsyncReply Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) return new AsyncReply(this.Create()); else return new AsyncReply(true); diff --git a/Libraries/Esiur/Resource/ResourceOperation.cs b/Libraries/Esiur/Resource/ResourceOperation.cs new file mode 100644 index 0000000..d3a4bf6 --- /dev/null +++ b/Libraries/Esiur/Resource/ResourceOperation.cs @@ -0,0 +1,110 @@ +/* + +Copyright (c) 2017 Ahmed Kh. Zamil + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Esiur.Resource; + +public enum ResourceOperation : int +{ + /// + /// Resource is requested to open/start its active work. + /// + Open = 0, + + /// + /// Resource is requested to initialize. + /// + Initialize = 1, + + + /// + /// Resource configuration should be applied or refreshed. + /// + Configure = 2, + + /// + /// Resource is requested to close/stop active work, but may remain loaded. + /// + Close = 3, + + /// + /// Resource is requested to terminate and release its resources. + /// + Terminate = 4, + + /// + /// Runtime has finished initializing the system/resource graph. + /// Safe point for resolving dependencies on other resources. + /// + SystemReady = 5, + + /// + /// Runtime is about to reload the system or resource graph. + /// Resource should prepare for reload. + /// + SystemReloading = 6, + + /// + /// Runtime has finished reloading the system or resource graph. + /// Resource may rebind dependencies or refresh state. + /// + SystemReloaded = 7, + + /// + /// Runtime is preparing to shut down the system. + /// Resource should stop background activity gracefully. + /// + SystemTerminating = 8, + + /// + /// Runtime has completed system shutdown/termination. + /// Usually used only for final notifications. + /// + SystemTerminated = 8, + + /// + /// Resource should persist its current state if supported. + /// + Save = 9, + + /// + /// Resource should reload its state from its backing store if supported. + /// + Load = 10, + + /// + /// Resource should pause active work without releasing all resources. + /// + Pause = 11, + + /// + /// Resource should resume work after pause. + /// + Resume = 12 +} diff --git a/Libraries/Esiur/Resource/ResourceTrigger.cs b/Libraries/Esiur/Resource/ResourceTrigger.cs deleted file mode 100644 index 9e4f1d5..0000000 --- a/Libraries/Esiur/Resource/ResourceTrigger.cs +++ /dev/null @@ -1,41 +0,0 @@ -/* - -Copyright (c) 2017 Ahmed Kh. Zamil - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -*/ - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Esiur.Resource; -public enum ResourceTrigger : int -{ - Open = 0, - Initialize, - Terminate, - Configure, - SystemInitialized, - SystemTerminated, - SystemReload, -} diff --git a/Libraries/Esiur/Resource/StoreGeneric.cs b/Libraries/Esiur/Resource/StoreGeneric.cs index e2cb13b..584d99c 100644 --- a/Libraries/Esiur/Resource/StoreGeneric.cs +++ b/Libraries/Esiur/Resource/StoreGeneric.cs @@ -38,7 +38,7 @@ public abstract class Store : IStore where T : IResource - public abstract AsyncReply Trigger(ResourceTrigger trigger); + public abstract AsyncReply Trigger(ResourceOperation trigger); //public async AsyncReply New(string name = null, object attributes = null, object properties = null) //{ diff --git a/Libraries/Esiur/Resource/Warehouse.cs b/Libraries/Esiur/Resource/Warehouse.cs index a4e5400..282f752 100644 --- a/Libraries/Esiur/Resource/Warehouse.cs +++ b/Libraries/Esiur/Resource/Warehouse.cs @@ -226,7 +226,7 @@ public class Warehouse //IResource r; //if (rk.Value.TryGetTarget(out r)) //{ - var rt = await r.Trigger(ResourceTrigger.Initialize); + var rt = await r.Trigger(ResourceOperation.Initialize); //if (!rt) // return false; @@ -239,7 +239,7 @@ public class Warehouse foreach (var r in resSnap) { - var rt = await r.Trigger(ResourceTrigger.SystemInitialized); + var rt = await r.Trigger(ResourceOperation.SystemInitialized); if (!rt) { Global.Log("Warehouse", LogType.Warning, $"Resource failed at SystemInitialized {r.Instance.Name} [{r.Instance.Definition.Name}]"); @@ -267,13 +267,13 @@ public class Warehouse if (resource.TryGetTarget(out r)) { if (!(r is IStore)) - bag.Add(r.Trigger(ResourceTrigger.Terminate)); + bag.Add(r.Trigger(ResourceOperation.Terminate)); } } foreach (var store in _stores) - bag.Add(store.Key.Trigger(ResourceTrigger.Terminate)); + bag.Add(store.Key.Trigger(ResourceOperation.Terminate)); foreach (var resource in _resources.Values) @@ -282,13 +282,13 @@ public class Warehouse if (resource.TryGetTarget(out r)) { if (!(r is IStore)) - bag.Add(r.Trigger(ResourceTrigger.SystemTerminated)); + bag.Add(r.Trigger(ResourceOperation.SystemTerminated)); } } foreach (var store in _stores) - bag.Add(store.Key.Trigger(ResourceTrigger.SystemTerminated)); + bag.Add(store.Key.Trigger(ResourceOperation.SystemTerminated)); bag.Seal(); @@ -448,9 +448,9 @@ public class Warehouse if (_warehouseIsOpen) { - await resource.Trigger(ResourceTrigger.Initialize); + await resource.Handle(ResourceOperation.Initialize); if (resource is IStore) - await resource.Trigger(ResourceTrigger.Open); + await resource.Handle(ResourceOperation.Open); } if (resource is IStore) diff --git a/Libraries/Esiur/Stores/MemoryStore.cs b/Libraries/Esiur/Stores/MemoryStore.cs index 609cda6..9b4a570 100644 --- a/Libraries/Esiur/Stores/MemoryStore.cs +++ b/Libraries/Esiur/Stores/MemoryStore.cs @@ -68,7 +68,7 @@ public class MemoryStore : IStore } - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { return new AsyncReply(true); } diff --git a/Libraries/Esiur/Stores/TemporaryStore.cs b/Libraries/Esiur/Stores/TemporaryStore.cs index eab8b54..166b3d2 100644 --- a/Libraries/Esiur/Stores/TemporaryStore.cs +++ b/Libraries/Esiur/Stores/TemporaryStore.cs @@ -59,7 +59,7 @@ public class TemporaryStore : IStore return new AsyncReply(null); } - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { return new AsyncReply(true); } diff --git a/Stores/Esiur.Stores.EntityCore/EntityStore.cs b/Stores/Esiur.Stores.EntityCore/EntityStore.cs index 75ea7ac..6fc7574 100644 --- a/Stores/Esiur.Stores.EntityCore/EntityStore.cs +++ b/Stores/Esiur.Stores.EntityCore/EntityStore.cs @@ -223,9 +223,9 @@ public class EntityStore : IStore internal DbContextOptions Options { get; set; } - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize)// SystemInitialized && DbContext != null) + if (trigger == ResourceOperation.Initialize)// SystemInitialized && DbContext != null) { if (Getter == null) diff --git a/Stores/Esiur.Stores.MongoDB/MongoDBStore.cs b/Stores/Esiur.Stores.MongoDB/MongoDBStore.cs index 8bb7928..6587cc1 100644 --- a/Stores/Esiur.Stores.MongoDB/MongoDBStore.cs +++ b/Stores/Esiur.Stores.MongoDB/MongoDBStore.cs @@ -521,10 +521,10 @@ public class MongoDBStore : IStore public string Collection { get; set; } [Attribute] public string Database { get; set; } - public AsyncReply Trigger(ResourceTrigger trigger) + public AsyncReply Trigger(ResourceOperation trigger) { - if (trigger == ResourceTrigger.Initialize) + if (trigger == ResourceOperation.Initialize) { var collectionName = Collection ?? "resources"; @@ -574,7 +574,7 @@ public class MongoDBStore : IStore return new AsyncReply(true); } - else if (trigger == ResourceTrigger.Terminate) + else if (trigger == ResourceOperation.Terminate) { // save all resources foreach (var resource in resources.Values)