2 // This file is part of the LWES .NET Binding (LWES.net)
4 // COPYRIGHT© 2009, Phillip Clark (phillip[at*flitbit[dot*org)
5 // original .NET implementation
7 // LWES.net is free software: you can redistribute it and/or modify
8 // it under the terms of the Lesser GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
12 // LWES.net is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // Lesser GNU General Public License for more details.
17 // You should have received a copy of the Lesser GNU General Public License
18 // along with LWES.net. If not, see <http://www.gnu.org/licenses/>.
20 namespace Org
.Lwes
.Listener
25 /// Strategies to be taken when garbage data arrives from an endpoint.
27 public enum GarbageHandlingVote
30 /// No opinion on garbage handling. Continue as normal.
34 /// Causes all traffic from an endpoint to be handled by the event
35 /// sink's HandleGarbageData.
37 TreatTrafficFromEndpointAsGarbage
,
39 /// Causes any data received from the endpoint to be discarded as soon
42 IgnoreAllTrafficFromEndpoint
,
44 /// The default strategy. Same as None
50 /// Enumeration for garbage handling strategy employed by Listeners.
52 public enum ListenerGarbageHandling
55 /// Indicates the listener should silently handle garbage data
56 /// but continue to accept data from all endpoints.
60 /// Indicates the listener should ignore data from endpoints
61 /// from which garbage has been received.
63 IgnoreEndpointsThatSendGarbage
= 1,
65 /// Indicates the listener should ask the event sinks to vote
66 /// on the strategy on a per-endpoint basis.
68 /// <see cref="Org.Lwes.Listener.IEventSink"/>
69 AskEventSinksToVoteOnStrategy
= 2,
71 /// The default value: FailSilently
73 Default
= FailSilently
77 /// Represents the state of an event sink.
79 public enum SinkStatus
82 /// Indicates the event sink has been suspended and should not receive
83 /// events until activated. This is the initial state for new IEventSinkRegistrationKeys.
87 /// Indicates the event sink is active and may be notified of events
92 /// For event sinks that are not thread-safe, indicates that the sink
93 /// is currently being invoked.
97 /// Indicates the event sink has been canceled.
102 #endregion Enumerations