using System; using System.Globalization; using Wayne.Lib; using Wayne.ForecourtControl.OptBridge; namespace Wayne.ForecourtControl.Fusion { #if !(_TEVENTARGS) public sealed class MessageEnqueuedEventArgs : EventArgs { // Fields private int requestId; private string requestType; private bool responseRequired; private EventHandler requestCompleted; private EventHandler> requestCompletedLong; private EventHandler> requestCompletedITankReading; private EventHandler> requestCompletedPumpAccumulatorReading; private EventHandler requestCompletedOptWrite; public long resultLong; public ITankReadingEx resultITankReading; public PumpAccumulatorReading resultPumpAccumulatorReading; public OptWriteCompletedEventArgs resultOptWrite; private object userToken; private object src; private DateTime requestTime; // Methods public MessageEnqueuedEventArgs(int requestId, string requestType, EventHandler requestCompleted, object userToken, object src, bool responseRequired) { this.requestId = requestId; this.requestType = requestType; this.requestCompleted = requestCompleted; this.userToken = userToken; this.src = src; this.responseRequired = responseRequired; } public MessageEnqueuedEventArgs(int requestId, string requestType, EventHandler> requestCompleted, object userToken, object src, bool responseRequired, long resultLong) { this.requestId = requestId; this.requestType = requestType; this.requestCompletedLong = requestCompleted; this.resultLong = resultLong; this.userToken = userToken; this.src = src; this.responseRequired = responseRequired; } public MessageEnqueuedEventArgs(int requestId, string requestType, EventHandler> requestCompleted, object userToken, object src, bool responseRequired, ITankReadingEx resultITankReading) { this.requestId = requestId; this.requestType = requestType; this.requestCompletedITankReading = requestCompleted; this.resultITankReading = resultITankReading; this.userToken = userToken; this.src = src; this.responseRequired = responseRequired; } public MessageEnqueuedEventArgs(int requestId, string requestType, EventHandler> requestCompleted, object userToken, object src, bool responseRequired, PumpAccumulatorReading resultPumpAccumulatorReading) { this.requestId = requestId; this.requestType = requestType; this.requestCompletedPumpAccumulatorReading = requestCompleted; this.resultPumpAccumulatorReading = resultPumpAccumulatorReading; this.userToken = userToken; this.src = src; this.responseRequired = responseRequired; } public MessageEnqueuedEventArgs(int requestId, string requestType, EventHandler requestCompleted, object userToken, object src, bool responseRequired, OptWriteCompletedEventArgs resultOptWrite) { this.requestId = requestId; this.requestType = requestType; this.requestCompletedOptWrite = requestCompleted; this.resultOptWrite = resultOptWrite; this.userToken = userToken; this.src = src; this.responseRequired = responseRequired; } public override string ToString() { return string.Format(CultureInfo.InvariantCulture, "MessageEnqueuedEventArgs {{requestId={0}}}", new object[] { this.requestId }); } // Properties public int RequestId { get { return this.requestId; } } public string RequestType { get { return this.requestType; } } public bool ResponseRequired { get { return this.responseRequired; } } public EventHandler RequestCompleted { get { return this.requestCompleted; } } public EventHandler> RequestCompletedLong { get { return this.requestCompletedLong; } } public EventHandler> RequestCompletedITankReading { get { return this.requestCompletedITankReading; } } public EventHandler> RequestCompletedPumpAccumulatorReading { get { return this.requestCompletedPumpAccumulatorReading; } } public EventHandler RequestCompletedOptWrite { get { return this.requestCompletedOptWrite; } } public object UserToken { get { return this.userToken; } } public object Scr { get { return this.src; } } } #else public sealed class MessageEnqueuedEventArgs : EventArgs where TEventArgs : EventArgs { // Fields private int requestId; private string requestType; private bool responseRequired; private EventHandler requestCompleted; public TResult result; private object userToken; private DateTime requestTime; // Methods public MessageEnqueuedEventArgs(int requestId, string requestType, EventHandler _requestCompleted, object userToken, bool responseRequired, TResult result) { this.requestId = requestId; this.requestType = requestType; this.requestCompleted = _requestCompleted; this.result = result; this.userToken = userToken; this.responseRequired = responseRequired; } public override string ToString() { return string.Format(CultureInfo.InvariantCulture, "MessageEnqueuedEventArgs {{requestId={0}}}", new object[] { this.requestId }); } // Properties public int RequestId { get { return this.requestId; } } public string RequestType { get { return this.requestType; } } public bool ResponseRequired { get { return this.responseRequired; } } public EventHandler RequestCompleted { get { return this.requestCompleted; } } public object UserToken { get { return this.userToken; } } public TResult Result { get { return this.result; } } } #endif }