public void onConnected(ITransformContext ctx, object data) { Task.Run(() => { var current = Next; while (current != null) { current.Resolver.onConnected(ctx, data); current = current.Next; } }).ContinueWith(task => { task.Exception?.printStackTrace(); }, TaskContinuationOptions.OnlyOnFaulted); }
public void onReadReady(ITransformContext ctx, ByteBuffer buf) { Task.Run(() => { var current = Next; while (current != null) { current.Resolver.onReadReady(ctx, buf); current = current.Next; } }).ContinueWith(task => { task.Exception?.printStackTrace(); }, TaskContinuationOptions.OnlyOnFaulted); }
public override void onConnected(ITransformContext ctx, object data) { //Handshake var tmpUid = (long)(1e14 + 2e14 * new Random().NextDouble()); var payload = "{ \"roomid\":" + channelId + ", \"uid\":" + tmpUid + "}"; var bytes = factory.packSimple(PacketMsgType.Handshake, payload); try { ctx.writeAndFlush(bytes); } catch (Exception e) { e.printStackTrace(); ctx.close(); return; } //Heartbeat Task.Run(async() => { var errorTimes = 0; var ping = factory.packSimple(PacketMsgType.Heartbeat, payload: string.Empty); while (ctx.isActive()) { try { ctx.writeAndFlush(ping); "Heartbeat...".toConsole(); await Task.Delay(30000); } catch (Exception e) { e.printStackTrace(); if (errorTimes > retryTimes) { break; } ++errorTimes; } } ctx.close(); }).ContinueWith(task => { task.Exception?.printStackTrace(); }); }
public virtual void onReadReady(ITransformContext ctx, ByteBuffer buf) { }
public virtual void onConnected(ITransformContext ctx, object data) { }
public override IMethodDefOrRef Transform(IMethodDefOrRef token, ITransformContext context) => token.GetLeafMethod() is IHasCustomAttribute hasAttr && hasAttr.IsBaseDependency() ? InjectBase(context) : importer.Import(token) is IMethodReference <IMethodDefOrRef> imported?context.SearchContext.Get(imported) : token;
public override CorLibTypeSig Transform(CorLibTypeSig token, ITransformContext context) => context.SearchContext.Get(importer.Import(token));
public override IField Transform(IField token, ITransformContext context) => importer.Import(token) is IFieldReference <IField> imported?context.SearchContext.Get(imported) : token;
public virtual ITypeDefOrRef Transform(ITypeDefOrRef token, ITransformContext context) => token;
public override ITypeDefOrRef Transform(ITypeDefOrRef token, ITransformContext context) => importer.Import(token) is ITypeReference <ITypeDefOrRef> imported?context.SearchContext.Get(imported) : token;
public virtual MethodSig Transform(MethodSig token, ITransformContext context) => token;
public override void onReadReady(ITransformContext ctx, ByteBuffer buf) { factory.setWorkFlow(buf); }
public virtual TypeSig Transform(TypeSig token, ITransformContext context) => token;
public virtual IMDTokenProvider Transform(IMDTokenProvider token, ITransformContext context) => token;
public virtual IMethodDefOrRef Transform(IMethodDefOrRef token, ITransformContext context) => token;
public virtual IField Transform(IField token, ITransformContext context) => token;
public virtual CorLibTypeSig Transform(CorLibTypeSig token, ITransformContext context) => token;
public override void onRead(ITransformContext ctx, ByteBuffer buf) { factory.fireUnpack(); }
/// <summary>The map.</summary> /// <param name="context">The context.</param> /// <returns>The <see cref="SampleInternalRequest" />.</returns> public SampleInternalRequest Map(ITransformContext <SampleClientRequest, SampleInternalRequest> context) { return(new SampleInternalRequest { Filter = context.Source.Query }); }