{"action":"created","issue":{"url":"https://api.github.com/repos/gawkermedia/amqp-client-provider/issues/5","labels_url":"https://api.github.com/repos/gawkermedia/amqp-client-provider/issues/5/labels{/name}","comments_url":"https://api.github.com/repos/gawkermedia/amqp-client-provider/issues/5/comments","events_url":"https://api.github.com/repos/gawkermedia/amqp-client-provider/issues/5/events","html_url":"https://github.com/gawkermedia/amqp-client-provider/pull/5","id":68696998,"number":5,"title":"update provider pattern to support one instance per producer/consumer","user":{"login":"stratiator","id":2676848,"avatar_url":"https://avatars.githubusercontent.com/u/2676848?v=3","gravatar_id":"","url":"https://api.github.com/users/stratiator","html_url":"https://github.com/stratiator","followers_url":"https://api.github.com/users/stratiator/followers","following_url":"https://api.github.com/users/stratiator/following{/other_user}","gists_url":"https://api.github.com/users/stratiator/gists{/gist_id}","starred_url":"https://api.github.com/users/stratiator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stratiator/subscriptions","organizations_url":"https://api.github.com/users/stratiator/orgs","repos_url":"https://api.github.com/users/stratiator/repos","events_url":"https://api.github.com/users/stratiator/events{/privacy}","received_events_url":"https://api.github.com/users/stratiator/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"leventem","id":10024983,"avatar_url":"https://avatars.githubusercontent.com/u/10024983?v=3","gravatar_id":"","url":"https://api.github.com/users/leventem","html_url":"https://github.com/leventem","followers_url":"https://api.github.com/users/leventem/followers","following_url":"https://api.github.com/users/leventem/following{/other_user}","gists_url":"https://api.github.com/users/leventem/gists{/gist_id}","starred_url":"https://api.github.com/users/leventem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leventem/subscriptions","organizations_url":"https://api.github.com/users/leventem/orgs","repos_url":"https://api.github.com/users/leventem/repos","events_url":"https://api.github.com/users/leventem/events{/privacy}","received_events_url":"https://api.github.com/users/leventem/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-04-15T14:27:57Z","updated_at":"2015-04-15T14:35:57Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/gawkermedia/amqp-client-provider/pulls/5","html_url":"https://github.com/gawkermedia/amqp-client-provider/pull/5","diff_url":"https://github.com/gawkermedia/amqp-client-provider/pull/5.diff","patch_url":"https://github.com/gawkermedia/amqp-client-provider/pull/5.patch"},"body":"The original purpose with creating previous `AmqpClientProvider` with precreating all producers/consumers is that we can have exactly one instance per producer and consumer. It wasn't achieved, because with `ProductionAmqpClientProvider` being a trait creates a new set of clients with every service we use it with. See service/core parts later on the solution about having an object of ProductionAmqpClientRegistry, and a provider trait uses that object.\r\n\r\n@leventem Can you check please? cc @privateblue \r\n\r\n![](https://media0.giphy.com/media/AA0Ywk64ZUBdS/200.gif)"},"comment":{"url":"https://api.github.com/repos/gawkermedia/amqp-client-provider/issues/comments/93425227","html_url":"https://github.com/gawkermedia/amqp-client-provider/pull/5#issuecomment-93425227","issue_url":"https://api.github.com/repos/gawkermedia/amqp-client-provider/issues/5","id":93425227,"user":{"login":"privateblue","id":888542,"avatar_url":"https://avatars.githubusercontent.com/u/888542?v=3","gravatar_id":"","url":"https://api.github.com/users/privateblue","html_url":"https://github.com/privateblue","followers_url":"https://api.github.com/users/privateblue/followers","following_url":"https://api.github.com/users/privateblue/following{/other_user}","gists_url":"https://api.github.com/users/privateblue/gists{/gist_id}","starred_url":"https://api.github.com/users/privateblue/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/privateblue/subscriptions","organizations_url":"https://api.github.com/users/privateblue/orgs","repos_url":"https://api.github.com/users/privateblue/repos","events_url":"https://api.github.com/users/privateblue/events{/privacy}","received_events_url":"https://api.github.com/users/privateblue/received_events","type":"User","site_admin":false},"created_at":"2015-04-15T14:35:57Z","updated_at":"2015-04-15T14:35:57Z","body":"to me it seems that it is still a trait. i don't understand what problem are we solving here with the extra layer"}}