public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { TCPSocket listener; if (ip != null) { listener = new TCPSocket(new IPEndPoint(IPAddress.Parse(ip), port)); } else { listener = new TCPSocket(new IPEndPoint(IPAddress.Any, port)); } Start(listener, timeout, clock); } else if (trigger == ResourceTrigger.Terminate) { Stop(); } else if (trigger == ResourceTrigger.SystemReload) { Trigger(ResourceTrigger.Terminate); Trigger(ResourceTrigger.Initialize); } return(new AsyncReply <bool>(true)); }
public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { TCPSocket listener; if (IP != null) { listener = new TCPSocket(new IPEndPoint(IPAddress.Parse(IP), Port)); } else { listener = new TCPSocket(new IPEndPoint(IPAddress.Any, Port)); } Start(listener); } else if (trigger == ResourceTrigger.Terminate) { Stop(); } else if (trigger == ResourceTrigger.SystemReload) { Trigger(ResourceTrigger.Terminate); Trigger(ResourceTrigger.Initialize); } else if (trigger == ResourceTrigger.SystemInitialized) { Instance.Children <TCPFilter>().Then(x => filters = x); } return(new AsyncReply <bool>(true)); }
public override AsyncReply <bool> Trigger(ResourceTrigger trigger) { this.RootPath = RootPath ?? "Web"; this.UpPath = UpPath ?? "Up"; return(new AsyncReply <bool>(true)); }
async AsyncReply <bool> IResource.Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { var address = IP == null ? IPAddress.Any : IPAddress.Parse(IP); udp = new UdpClient(new IPEndPoint(address, Port)); receiver = new Thread(Receiving); receiver.Start(); } else if (trigger == ResourceTrigger.Terminate) { if (receiver != null) { receiver.Abort(); } } else if (trigger == ResourceTrigger.SystemInitialized) { filters = await Instance.Children <UDPFilter>(); } return(true); }
public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { Create(); } return(new AsyncReply <bool>(true)); }
/// <summary> /// Resource interface. /// </summary> /// <param name="trigger"></param> /// <returns></returns> public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { this.Instance.PropertyModified += this.PropertyModified; } // do nothing. return(new AsyncReply <bool>(true)); }
public virtual AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { return(new AsyncReply <bool>(this.Create())); } else { return(new AsyncReply <bool>(true)); } }
public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize)// SystemInitialized && DbContext != null) { if (Getter == null) { throw new Exception("Getter is not set for the store."); } // DbContextProvider = () => Activator.CreateInstance(Options.Options.ContextType, Options.Options) as DbContext; ReloadModel(); initialized = true; } return(new AsyncReply <bool>(true)); }
/* * protected override void SessionEnded(NetworkSession session) * { * // verify wether there are no active connections related to the session * * foreach (HTTPConnection c in Connections)//.Values) * { * if (c.Session == session) * { * session.Refresh(); * return; * } * } * * foreach (Instance instance in Instance.Children) * { * var f = (HTTPFilter)instance.Resource; * f.SessionExpired((HTTPSession)session); * } * * base.SessionEnded((HTTPSession)session); * //Sessions.Remove(Session.ID); * //Session.Dispose(); * } */ /* * public int TTL * { * get * { * return Timeout;// mTimeout; * } * } */ public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { //var ip = (IPAddress)Instance.Attributes["ip"]; //var port = (int)Instance.Attributes["port"]; //var ssl = (bool)Instance.Attributes["ssl"]; //var cert = (string)Instance.Attributes["certificate"]; //if (ip == null) ip = IPAddress.Any; ISocket listener; IPAddress ipAdd; if (ip == null) { ipAdd = IPAddress.Any; } else { ipAdd = IPAddress.Parse(ip); } // if (ssl) // listener = new SSLSocket(new IPEndPoint(ipAdd, port), new X509Certificate2(certificate)); // else listener = new TCPSocket(new IPEndPoint(ipAdd, port)); Start(listener, timeout, clock); } else if (trigger == ResourceTrigger.Terminate) { Stop(); } else if (trigger == ResourceTrigger.SystemReload) { Trigger(ResourceTrigger.Terminate); Trigger(ResourceTrigger.Initialize); } return(new AsyncReply <bool>(true)); }
public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { var filter = new BsonDocument(); var list = resourcesCollection.Find(filter).ToList(); Console.WriteLine(list.Count); // if (list.Count == 0) // return new AsyncBag<IResource>(new IResource[0]); var bag = new AsyncBag <IResource>(); for (var i = 0; i < list.Count; i++) { Console.WriteLine("Loading {0}/{1}", i, list.Count); bag.Add(Get("id/" + list[i]["_id"].AsObjectId.ToString())); } bag.Seal(); var rt = new AsyncReply <bool>(); bag.Then((x) => { rt.Trigger(true); }); return(rt); } else if (trigger == ResourceTrigger.Terminate) { // save all resources foreach (var resource in resources.Values) { SaveResource(resource); } return(new AsyncReply <bool>(true)); } else { return(new AsyncReply <bool>(true)); } }
public bool Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { var address = ip == null ? IPAddress.Any : IPAddress.Parse(ip); Udp = new UdpClient(new IPEndPoint(address, (int)port)); Receiver = new Thread(Receiving); Receiver.Start(); } else if (trigger == ResourceTrigger.Terminate) { if (Receiver != null) { Receiver.Abort(); } } return(true); }
public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { /* * foreach (var resource in Instance.Children<IResource>()) * { * * 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) { // foreach (var src in sources) // src.Close(); } else if (trigger == ResourceTrigger.SystemReload) { foreach (var src in sources) { src.Close(); src.Open(); } } return(new AsyncReply <bool>(true)); }
public AsyncReply <bool> Trigger(ResourceTrigger trigger) { if (trigger == ResourceTrigger.Initialize) { var collectionName = Collection ?? "resources"; var dbName = Database ?? "Esiur"; client = new MongoClient(Connection ?? "mongodb://localhost"); database = client.GetDatabase(dbName); resourcesCollection = this.database.GetCollection <BsonDocument>(collectionName); count = (int)resourcesCollection.CountDocuments(x => true); // return new AsyncReply<bool>(true); /* * var filter = new BsonDocument(); * * var list = resourcesCollection.Find(filter).ToList(); * * * // if (list.Count == 0) * // return new AsyncBag<IResource>(new IResource[0]); * * var bag = new AsyncBag<IResource>(); * * for(var i = 0; i < list.Count; i++) * { * Console.WriteLine("Loading {0}/{1}", i, list.Count); * bag.Add(Get("id/" + list[i]["_id"].AsObjectId.ToString())); * } * * bag.Seal(); * * var rt = new AsyncReply<bool>(); * * bag.Then((x) => { * * // storeChildren.AddRange(x); * rt.Trigger(true); * * }); * * return rt; */ return(new AsyncReply <bool>(true)); } else if (trigger == ResourceTrigger.Terminate) { // save all resources foreach (var resource in resources.Values) { if (resource.IsAlive) { SaveResource(resource.Target as IResource); } } return(new AsyncReply <bool>(true)); } else { return(new AsyncReply <bool>(true)); } }
public abstract AsyncReply <bool> Trigger(ResourceTrigger trigger);
/// <summary> /// Resource interface. /// </summary> /// <param name="trigger"></param> /// <returns></returns> public AsyncReply <bool> Trigger(ResourceTrigger trigger) { // do nothing. return(new AsyncReply <bool>(true)); }
public AsyncReply <bool> Trigger(ResourceTrigger trigger) { return(new AsyncReply <bool>(true)); }
public bool Trigger(ResourceTrigger trigger) { return(true); }