IRPC.cs 705 B

12345678910111213141516
  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. public interface IRPC
  10. {
  11. public void Respond<TRequest, TResponse>(Func<TRequest, IPrimitiveMap, TResponse> responder,string selector = "");
  12. public TResponse? Request<TRequest, TResponse>(TRequest request,ref bool istimeout,Dictionary<string,string>? properties = null, CancellationToken token = default, UInt32 timeout = 1000);
  13. public Task<TResponse> RequestAsync<TRequest, TResponse>(TRequest request, Dictionary<string, string>? properties = null, CancellationToken token = default, UInt32 timeout = 1000);
  14. }
  15. }