// using System.Collections.Generic; using System.Reflection; using System; using mROA.Abstract; using mROA.Implementation.Backend; using mROA.Implementation; namespace mROA.Codegen { public sealed class RemoteTypeBinder { static RemoteTypeBinder(){ RemoteContextRepository.RemoteTypes = new Dictionary { , }; ContextRepository.EventBinders = new object[] { new EventBinder<> { BindAction = (instance, context, representationProducer, index) => { var ownerId = context.OwnerId; var module = representationProducer.Produce(ownerId); (instance as ). += () => { Console.WriteLine($"Try to send to {ownerId} with hash code {context.GetHashCode()}"); Console.WriteLine("Sending event..."); var request = new DefaultCallRequest { CommandId = , ObjectId = new ComplexObjectIdentifier(index, ownerId), Parameters = new object[] { } }; module.PostCallMessageAsync(request.Id, EMessageType.EventRequest, request, context); }; } } }; } } }