MQRPC.cs 763 B

1234567891011121314151617181920
  1. using Apache.NMS;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace EasyMQ
  8. {
  9. internal abstract class MQRPC :MQDispose, IRPC
  10. {
  11. public abstract TResponse? Request<TRequest, TResponse>(TRequest request, ref bool istimeout, Dictionary<string, string>? properties = null, CancellationToken token = default,UInt32 timeout = 1000);
  12. public abstract void Respond<TRequest, TResponse>(Func<TRequest, IPrimitiveMap, TResponse> responder,string selector = "");
  13. public abstract Task<TResponse> RequestAsync<TRequest, TResponse>(TRequest request, Dictionary<string, string>? properties = null, CancellationToken token = default, UInt32 timeout = 1000);
  14. }
  15. }