static private void OnEvent_callback(IntPtr instance, IntPtr e) { DistClient client = ReferenceDictionary <DistClient> .GetObject(instance); if (client != null) { DistEvent @event = Reference.CreateObject(e) as DistEvent; if (@event != null) { if (client.UseAutoProperty && @event.GetType().IsDefined(typeof(DistPropertyAutoRestore), true)) { @event.RestorePropertiesAndFields(); } try { client.OnEvent?.Invoke(client, @event); } catch (Exception ex) { Message.SendException("DistClient", ex); } } } }
public bool SendEvent(DistEvent e, DistSession session) { if (UseAutoProperty && e.GetType().IsDefined(typeof(DistPropertyAutoStore), true)) { e.StorePropertiesAndFields(); } return(DistClient_sendEvent(GetNativeReference(), e.GetNativeReference(), session.GetNativeReference())); }
private void OnEvent_callback(IntPtr e) { DistEvent @event = Reference.CreateObject(e) as DistEvent; if (@event != null) { if (UseAutoProperty && @event.GetType().IsDefined(typeof(DistPropertyAutoRestore), true)) { @event.RestorePropertiesAndFields(); } OnEvent?.Invoke(this, @event); } }
public DistEvent AwaitResponse(DistEvent responseEventType, UInt32 timeout = 100) { DistEvent response = Reference.CreateObject(DistClient_awaitResponse(GetNativeReference(), responseEventType.GetNativeReference(), timeout)) as DistEvent; if (response?.IsValid() ?? false) { if (UseAutoProperty && response.GetType().IsDefined(typeof(DistPropertyAutoRestore), true)) { response.RestorePropertiesAndFields(); } } return(response); }