ActiveHutch.cs 835 B

123456789101112131415161718192021
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace EasyMQ
  7. {
  8. public sealed class ActiveHutch
  9. {
  10. public const string CLIENT_ID_KEY = "ActiveMQClientID";
  11. public IBus CreateBus(string ip,int port,ISerializer serializer)
  12. {
  13. string connectstring = $"tcp://{ip}:{port}?wireFormat.maxInactivityDuration=0&wireFormat.tightEncodingEnabled=false&timeout = 3000&nested.wireFormat.maxInactivityDuration=2000&connectionTimeout= 10000&keepAlive=true";
  14. if (serializer == null) throw new ArgumentNullException(nameof(serializer));
  15. ActiveMQBus bus = new ActiveMQBus(connectstring, serializer);
  16. return bus;
  17. }
  18. public static ActiveHutch Default { get; } = new ActiveHutch();
  19. }
  20. }