{"_id":"catberry-locator","_rev":"41-836080f617a9796b72cf894d76ffdef7","name":"catberry-locator","description":"Service Locator for Catberry Framework","dist-tags":{"latest":"2.2.1"},"versions":{"0.4.0":{"name":"catberry-locator","version":"0.4.0","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service locator module for catberry framework","homepage":"https://github.com/pragmadash/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/pragmadash/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/pragmadash/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"mocha":"~1.17.1","jscs":"~1.3.0","jshint":"~2.5.0"},"engines":{"node":"~0.10.26"},"scripts":{"test":"jshint ./ && jscs ./** && mocha --recursive"},"licenses":[{"type":"MIT","url":"https://github.com/pragmadash/catberry-locator/blob/master/LICENSE"}],"_id":"catberry-locator@0.4.0","dist":{"shasum":"025bb62cfe45096319b63d371ad02a2de08043b2","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-0.4.0.tgz","integrity":"sha512-j1nKTHF9S76g/NcPhDvM742EnBINzOfMAn/UXkIcffBxbId9Ow4JY4XeXL6Hk5RxaAiv3SDqeOeq4JJJ5y0LAQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzZ0D3pZsn9O0eGDbOSjuvvlzjOgCEM7JOKpbe0ndRsQIhAN2WBt7WfpOVEMSG0VHTL9b0CMp28FTSnziHtD9872vj"}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"directories":{}},"1.0.2":{"name":"catberry-locator","version":"1.0.2","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator module for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"mocha":"~1.17.1","jscs":"~1.3.0","jshint":"~2.5.0"},"engines":{"node":"~0.10.26"},"scripts":{"test":"jshint ./ && jscs ./** && mocha --recursive"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"70efda0ecb933dd878c6a15b47f62c9bab943596","_id":"catberry-locator@1.0.2","_shasum":"81c61c37c04e2b298bf4c3ffcf178f98140c1027","_from":".","_npmVersion":"1.4.16","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"81c61c37c04e2b298bf4c3ffcf178f98140c1027","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.0.2.tgz","integrity":"sha512-sxgF/OEWiJ1sBkBlBY4f2kIruPrfzU0FaMJpTuXf1qIgwIjOGp8VdzT4UqFHxIUxKJV94yX3YWGCS0weuYLKmw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC1oHINCttIKtT8pTE72+dJYhPt7KWly9ogMqJemhCqfAiEAjcFpaE+Z5tM3ylB4bZ4zxUJY/zye9XrNtqqTH+wEyn4="}]},"directories":{}},"1.0.3":{"name":"catberry-locator","version":"1.0.3","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.0","coveralls":"^2.11.1","mocha":"~1.17.1","jscs":"~1.3.0","jshint":"~2.5.0"},"engines":{"node":"~0.10.26"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"12232ccbe2427a1f5a8cb6dbf287d57f201355f6","_id":"catberry-locator@1.0.3","_shasum":"2722adecd22b03254a634ae3a6488350beafb964","_from":".","_npmVersion":"1.4.26","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"2722adecd22b03254a634ae3a6488350beafb964","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.0.3.tgz","integrity":"sha512-9lX2tEBNbLwxMrCAdC2+i63vZtiGSXJus15aOiwDOrZHhUhehbaeI5Txd3oGBZHr+SyFIvCC3iMo4tLJ9Tt0KA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAkRhwXqOTfjErp29E7kA/bi7u+Bb6K1C7Ws2qWbbgi/AiA84CCwymVwD5IBrex5ZpTnHem64PNtWCRHIKpt1sqagw=="}]},"directories":{}},"1.1.0":{"name":"catberry-locator","version":"1.1.0","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.0","coveralls":"^2.11.1","mocha":"^1.20.0","jscs":"~1.4.0","jshint":"^2.5.0"},"engines":{"node":"~0.10.26"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"1e3ce81890af9a2e75c62186d048935a11e74e99","_id":"catberry-locator@1.1.0","_shasum":"30b5391957266e8683d71447730b8d89a987a356","_from":".","_npmVersion":"1.4.26","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"30b5391957266e8683d71447730b8d89a987a356","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.0.tgz","integrity":"sha512-JIxN8u5DgsSOLo4inCzFULVnuLHDy6nhnMftBWa9wqVCpIKkLjgNdalC5nE7ykbf1fgmr5k37V+NjY+hiuyrAg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlEHBF62cX/DQQ+IQX1rwGTrG39ed6KLWye99iCFk24gIhAI8UZRFn+/R09QkHP6H/H1tdBhN61etax6Jvqj3Y4C9T"}]},"directories":{}},"1.1.1":{"name":"catberry-locator","version":"1.1.1","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.0","coveralls":"^2.11.1","mocha":"^1.20.0","jscs":"^1.6.0","jshint":"^2.5.0"},"engines":{"node":"~0.10.26"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"fdb1a15ccb6961cfa738924d87a19e9708228dcb","_id":"catberry-locator@1.1.1","_shasum":"b6bf641450b988bf8338b5b2ed99be145a89fad5","_from":".","_npmVersion":"2.0.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"b6bf641450b988bf8338b5b2ed99be145a89fad5","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.1.tgz","integrity":"sha512-UvYiBayDvj2Fri2Y3qo5Qi2XI1zOyDcDeqtu94SLeMeJMdw5A2GMCganPD2nT0+D2eC5P84COdcOa1hBRrbjeg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAs/oPiDUncPv23NEKqmHJe2W6xD/yhJSEo91C0rwVXwIgWYh4CNoqtb3vkdowlsZY0AZOudQh0KInfNTRVrqzPh8="}]},"directories":{}},"1.1.2":{"name":"catberry-locator","version":"1.1.2","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.0","coveralls":"^2.11.1","mocha":"^2.0.0","jscs":"^1.6.0","jshint":"^2.5.0"},"engines":{"node":"~0.10.26"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"79361394f46e5724badd73b2fd586fc87ecb6cf2","_id":"catberry-locator@1.1.2","_shasum":"1dbf8bb1c101d5b1d5b723c5370865504d784068","_from":".","_npmVersion":"2.1.6","_nodeVersion":"0.10.33","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"1dbf8bb1c101d5b1d5b723c5370865504d784068","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.2.tgz","integrity":"sha512-ZU3YvcoLzKmT7WTBS826mq/wipaaJ8EZ+Kn120/Oe20GTq18nae80l3JmM0JbwORmFTaEikrvIC8Ml0EpPMr2Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICT7Fm5snTivCv85N3nmoy1k0zbESkOgG+uyPtIMUj7fAiEA+6eFH3EjHgU4KlvBdlQoNH8FccncVf5R7ICQKrKcj2U="}]},"directories":{}},"1.1.3":{"name":"catberry-locator","version":"1.1.3","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.1","coveralls":"^2.11.2","mocha":"^2.1.0","jscs":"~1.6.2","jshint":"^2.6.0"},"engines":{"node":">=0.10"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"5ec408c580382b72646751a5e8c35326067855bc","_id":"catberry-locator@1.1.3","_shasum":"c6355b50f8daa2b6540839f24be4af245b0c7e14","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"c6355b50f8daa2b6540839f24be4af245b0c7e14","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.3.tgz","integrity":"sha512-sFpHIcRHzfgxtj3SX/Y6gu5f6xe827ilmxkkeiPJMErwnQBw3bUFIlD5x7g+TbR2/3fQWGAML2ukrC6aI/u0bg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGgyZfwLPiL8771Cf2iln34kMaczHoDn3yjhb3ctPkgTAiAqGp96DMNGNFuJL2jxZW/hOhPqse1o+sGX5pJHqRQfCQ=="}]},"directories":{}},"1.1.4":{"name":"catberry-locator","version":"1.1.4","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.1","coveralls":"^2.11.2","mocha":"^2.1.0","jscs":"~1.6.2","jshint":"^2.6.0"},"engines":{"node":">=0.10"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"da431ad2400300773a816139c3b3c6849b839a5f","_id":"catberry-locator@1.1.4","_shasum":"4f50d9716946c4103c75b405cf66e19680ee2d41","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"4f50d9716946c4103c75b405cf66e19680ee2d41","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.4.tgz","integrity":"sha512-m8mLjq9f9OQ1sfcJgUIT8iBk8Un/z28p9pSjBj5tQWBB3YuLGSBusOpHkIhIz7Ms+9ZLozz1pRKPk1rUf/vekQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH0wNGGm3UHTNhbBOXGEM6lql4ueZotJeeau+bM5k1VVAiAdcKYbEPpjE42ls1M+X4STcZsxNAhgYd9hgSkX4KubNQ=="}]},"directories":{}},"1.1.5":{"name":"catberry-locator","version":"1.1.5","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.1","coveralls":"^2.11.2","mocha":"^2.1.0","jscs":"~1.6.2","jshint":"^2.6.0"},"engines":{"node":">=0.10"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"d8a7844183acdda783935dbf99d3a5c8cf1b70ff","_id":"catberry-locator@1.1.5","_shasum":"f821aec870b6f79c0d3ddee0a3f3dd1e4573ecd1","_from":".","_npmVersion":"2.8.3","_nodeVersion":"1.8.1","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"f821aec870b6f79c0d3ddee0a3f3dd1e4573ecd1","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.5.tgz","integrity":"sha512-ZG9i2JxFJ7ZNGJevwEVfMHP6J4zgv1vPObTNPy/BgQp09DsLeaZOh9MfVfS1V5Ri3zATisald3QWVrC3QaEiTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDEIgvth+46QDXIidEL4L0g5yU73Ypd+bENXmuUqKL/GAiBWVpwUvZJDQfiuJ1kYTFEA/Q4Lgw4iJkQVn1JcUW3PIA=="}]},"directories":{}},"1.1.6":{"name":"catberry-locator","version":"1.1.6","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.1","codecov.io":"^0.1.2","mocha":"^2.1.0","jscs":"~1.6.2","jshint":"^2.6.0"},"engines":{"node":">=0.10"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"26d9fa8dd437efc236c985c8a2337adbb3ef6200","_id":"catberry-locator@1.1.6","_shasum":"497e46a882c73cf0c5d7764f0a563c528c35ab9a","_from":".","_npmVersion":"2.8.3","_nodeVersion":"1.8.1","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"497e46a882c73cf0c5d7764f0a563c528c35ab9a","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.6.tgz","integrity":"sha512-XH+qVS19c/pOC3InX+QLM5O4sPhwdvUWOn9pUKnTplVyapBueIuIQKiKvY/B49eKomjRlIDPnjsMdloL+/KMqA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyxYiLWckTDODwK9XECKMgDylidHCuAejFYEwNGLcGSwIgBId8OrM5m+QnLtgzwkAh6ChTApTwS7k/jNzLeHqTU20="}]},"directories":{}},"1.1.7":{"name":"catberry-locator","version":"1.1.7","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul-harmony":"~0.3.1","codecov.io":"^0.1.2","mocha":"^2.1.0","jscs":"~1.6.2","jshint":"^2.6.0"},"engines":{"node":">=0.10"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"196698f9c19efdc5d6e806efe7f1e342eba61497","_id":"catberry-locator@1.1.7","_shasum":"cf212243860a275a86abf87f16b99198d3f5f4c1","_from":".","_npmVersion":"2.9.0","_nodeVersion":"1.8.3","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"cf212243860a275a86abf87f16b99198d3f5f4c1","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.7.tgz","integrity":"sha512-7Z3GZvmNcH8PEuiiShYTtD6jVHZTwFrYaMUPkKhsUFhNyrV8DmkUBZK5sSV0/uKgq/IdsIGLMCPWGjZpm/sNeg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGC/r4cyX4PNW37VgRJyHPjT3bswsV120SUrpPqLLw5PAiAoULiv6zQjkMDlEPD/cdOpUHpVMPTGv2JHAUZhTrTT+A=="}]},"directories":{}},"1.1.8":{"name":"catberry-locator","version":"1.1.8","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul":"~0.4.0","codecov.io":"~0.1.6","mocha":"^2.3.3","jscs":"^2.5.1","jshint":"^2.8.0"},"engines":{"node":">=0.10"},"scripts":{"test":"make"},"licenses":[{"type":"MIT","url":"https://github.com/catberry/catberry-locator/blob/master/LICENSE"}],"gitHead":"3ce3ca5f1d3a557f8ba79ace332dc86b38ebb20b","_id":"catberry-locator@1.1.8","_shasum":"1568f6db6977bf18aeb98742589046b9e5011660","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"1568f6db6977bf18aeb98742589046b9e5011660","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.8.tgz","integrity":"sha512-YCu07x65wkQ748yNizjYFJ0zLqQWNDjX75QoEQ/AdZ3l91Mgp+pgfuDlUbkei2yBgkLEnoDQHS5ZLz6xyqXs6g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHyvJV/eDLljeMS72LyspwayWeBNThge+Y3ZnZ7q5NZhAiA6EatmmhHxwVpAFJYDey6NZaH3D9CQrdiadJsZazf0rg=="}]},"directories":{}},"1.1.9":{"name":"catberry-locator","version":"1.1.9","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul":"~0.4.0","codecov.io":"~0.1.6","mocha":"^2.3.3","jscs":"^2.5.1","jshint":"^2.8.0"},"engines":{"node":">=0.10"},"scripts":{"test":"make"},"license":"MIT","gitHead":"f952d27c5f9429cbf626f2018a4d05cd631320a3","_id":"catberry-locator@1.1.9","_shasum":"e8fb671f4bb41cf90856678cbb320bc6a1bd3562","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"e8fb671f4bb41cf90856678cbb320bc6a1bd3562","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.9.tgz","integrity":"sha512-R3qVZKixXIk9T6kKop+CTt9Aq2AEAWa0A+Id62Nv8AuuhH3xiB57pIRhDtphyKeD1wZPOYPDBN1hBJcb9iaxbw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCr0Jzc6jiIKIPCP96c+j4JIsX2Vf4kcNRLwSFk5xyUYwIhAMucYCxBLy22L+Gfcz6Zptqa4opbt6zfnk+azpbhahwM"}]},"directories":{}},"1.1.10":{"name":"catberry-locator","version":"1.1.10","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator component for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","module","dependency injection","IoC","DI"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul":"~0.4.0","codecov.io":"~0.1.6","mocha":"^2.3.3","jscs":"^2.5.1","jshint":"^2.8.0"},"engines":{"node":">=0.12"},"scripts":{"test":"make"},"license":"MIT","gitHead":"c19c1472b77b67245e313cc2da67c6339086ab19","_id":"catberry-locator@1.1.10","_shasum":"a29922f2d7f20451279b5319756f4b0f92e61a5d","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"a29922f2d7f20451279b5319756f4b0f92e61a5d","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-1.1.10.tgz","integrity":"sha512-Y+VoQNlAyF/2aJ8xCvld1c1gaPPfR5vaoELTsUE1IH7wflZWswCqk/YoibWLeffKKsD0o26m/POxgRzRBgA+Vw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC0jl8sd1sZvsU9OyjtY+v86Nou1q0Ly0WR+rWGmYvemAiEA/7Hs+tpGUD092c8EOOfYC3Zb2Xm2tVy4wvHlg9hkyvY="}]},"directories":{}},"2.0.0":{"name":"catberry-locator","version":"2.0.0","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","registry","modules","IoC"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul":"~0.4.0","codecov":"^1.0.1","mocha":"^2.4.5","eslint":"^2.0.0"},"engines":{"node":">=4"},"scripts":{"test":"make"},"license":"MIT","gitHead":"fd74d48da3d458631b71f299870801fd531bc63b","_id":"catberry-locator@2.0.0","_shasum":"62578108cc2a86149431bfa0882d7e67e2cc4656","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"62578108cc2a86149431bfa0882d7e67e2cc4656","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-2.0.0.tgz","integrity":"sha512-FEl2BqyGjStI3Izhd9sISLf0YC1FcaM3tpLbR8cUSsqgIKj5SFlCNPuUzKlm5gZLBnsgQbRHWeIu0iN5aMMmFA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAoD4GK4iOBt/3/55ZnETNckRHwBaqIbj7UTEz1am38PAiEA6mTlztUuTE1WuJbz0fGvFiJ5uooc/z0yjgLfEmEAoeE="}]},"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/catberry-locator-2.0.0.tgz_1455977616332_0.8911245078779757"},"directories":{}},"2.1.0":{"name":"catberry-locator","version":"2.1.0","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","registry","modules","IoC"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul":"~0.4.0","codecov":"^1.0.1","mocha":"^2.4.5","eslint":"^2.0.0"},"engines":{"node":">=4"},"scripts":{"test":"make"},"license":"MIT","gitHead":"a702f05c111581b247999d252ee1880513f9fc87","_id":"catberry-locator@2.1.0","_shasum":"4be57a15e95c4289b7b94675cdb92600951569fa","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"pragmadash","email":"denis.rechkunov@gmail.com"},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"dist":{"shasum":"4be57a15e95c4289b7b94675cdb92600951569fa","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-2.1.0.tgz","integrity":"sha512-W5Xo5CsVPAYxBuwGtgjlpRP+B6LX2n3ewVE+SxaByu742VPX9rsYHmMWbEVXkiFcUUGAo81ASs0KYYLeJbWBTA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8Z/RUX8ThcBwSDvulds/qcqrtFlcdFiQbQV3BKImLsQIgYaPKirV4Sd89FG5CK7bPciHbdBvelIoObNaTsabHpww="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/catberry-locator-2.1.0.tgz_1457122397633_0.7189896104391664"},"directories":{}},"2.2.0":{"name":"catberry-locator","version":"2.2.0","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","registry","modules","IoC"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul":"~0.4.0","codecov":"^1.0.1","mocha":"^3.0.2","eslint":"^3.3.1"},"engines":{"node":">=4"},"scripts":{"test":"make"},"license":"MIT","gitHead":"33ffad3efb31abc5bd6d77a518d6119e34d5193b","_id":"catberry-locator@2.2.0","_shasum":"194f40c7963dc151862579a35e25ec998c319e51","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.3.1","_npmUser":{"name":"pragmader","email":"denis.rechkunov@gmail.com"},"dist":{"shasum":"194f40c7963dc151862579a35e25ec998c319e51","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-2.2.0.tgz","integrity":"sha512-sovAD/0BcAwE21npjF0F+JGHE37tIlonuM/8Z8pzx5BifTn6TcFouhs7R7j4UP4Wyni3LZa9+jLpmwVPBjxCJA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEjNq+1JBKKIydsVYZlcbcUgzyyGveweBpQrzJLdAlGUAiEA8qKaHuu7cL/cqbPx/11HbNsxeyANxNRaZXzwOFSwF9Q="}]},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/catberry-locator-2.2.0.tgz_1471975878432_0.5210771828424186"},"directories":{}},"2.2.1":{"name":"catberry-locator","version":"2.2.1","author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"description":"Service Locator for Catberry Framework","homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","registry","modules","IoC"],"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"main":"./lib/ServiceLocator.js","devDependencies":{"istanbul":"~0.4.5","codecov":"^2.1.0","mocha":"^3.2.0","eslint":"^3.18.0"},"engines":{"node":">=4"},"scripts":{"test":"make"},"license":"MIT","gitHead":"ef6284d1403513615b1e2157cb254ed79bca692a","_id":"catberry-locator@2.2.1","_shasum":"df771edc2fba6958b423b1ce81540a9a7b0bdeab","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"pragmader","email":"denis.rechkunov@gmail.com"},"dist":{"shasum":"df771edc2fba6958b423b1ce81540a9a7b0bdeab","tarball":"https://registry.npmjs.org/catberry-locator/-/catberry-locator-2.2.1.tgz","integrity":"sha512-g9HDJqKVNv/M8PqdmtHYTWuAf1qOxJsonSiCU4m4iRL7PDAAGXfIhR9vu3RMKFPPc7mfcpnrefGdYx851UwXrQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHwdHTmLExMpJmtLmrYoQv6LJSillZsa70Y2e1rlcbmZAiEA640H76l1VDgQ02UrpckiLQ/H6msDk+5N/3DiQI3f8vA="}]},"maintainers":[{"name":"pragmadash","email":"denis.rechkunov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/catberry-locator-2.2.1.tgz_1489855832756_0.7798953589517623"},"directories":{}}},"readme":"# Service Locator for Catberry Framework\n\n[![Build Status](https://travis-ci.org/catberry/catberry-locator.svg?branch=master)](https://travis-ci.org/catberry/catberry-locator) [![codecov.io](http://codecov.io/github/catberry/catberry-locator/coverage.svg?branch=master)](http://codecov.io/github/catberry/catberry-locator?branch=master)\n\n## Description\n\nThe entire architecture of the [Catberry Framework](https://github.com/catberry/catberry)\nis based on [Service Locator pattern](http://en.wikipedia.org/wiki/Service_locator_pattern).\nIt means that there is only one Service Locator (module registry)\nin a Catberry application and all application's and framework's modules are\nresolved from the locator when you start the application.\n\nIn case of Catberry Framework, starting an application means to\ncall `getMiddleware` method in `server.js` or `startWhenReady`\nin `browser.js`. Before that moment feel free to register your own\nmodules-services into Service Locator.\n\n## Usage\n\n### Registering your Implementations\n\nFor example, you have a class that implement something:\n\n```javascript\nclass Cat {\n\t// constructor always has the only argument – the Service Locator.\n\tconstructor(locator) {\n\t\tthis.berry = locator.resolve('berry');\n\t}\n}\n```\n\nAnd you might have an \"old style\" class definition using constructor and prototype:\n\n```javascript\n// constructor always has the only argument – the Service Locator.\nfunction Berry(locator) {\n\t// config is always registered in a Catberry application.\n\tthis.berryType = locator.resolve('config').berryType;\n}\n```\n\nSo, you need to register these implementations into the locator\nbefore starting an application.\n\nRegistering in `browser.js` script:\n\n```javascript\nconst catberry = require('catberry');\nconst config = require('./browser-config');\nconst cat = catberry.create(config);\n\n// when you have created an instance of the Catberry application\n// you can register your modules in the Service Locator.\ncat.locator.register('cat', Cat);\ncat.locator.register('berry', Berry);\n\n// you can register services only before the cat.startWhenReady() method is called\ncat.startWhenReady();\n```\n\nRegistering in `server.js` script:\n\n```javascript\nconst catberry = require('catberry');\nconst config = require('./server-config');\nconst cat = catberry.create(config);\nconst connect = require('connect');\nconst http = require('http');\nconst app = connect();\n\n// when you have created an instance of the Catberry application\n// you can register your modules in the Service Locator.\ncat.locator.register('cat', Cat);\ncat.locator.register('berry', Berry);\n\n// you can register services only before cat.getMiddleware() method is called\napp.use(cat.getMiddleware());\napp.use(connect.errorHandler());\nhttp\n\t.createServer(app)\n\t.listen(config.server.port || 3000);\n\n```\n\nAll cat-components and stores in a Catberry application are registered\nautomatically into the Service Locator. So, you don't need to do that on your own.\n\n### Using Implementations\n\nAs far as every module's constructor has the only argument – the Service Locator,\nyou can resolve all modules-dependencies while creating new instances of these\nmodules using `locator` argument:\n\n```javascript\nclass Cat {\n\t// constructor always has the only argument – the Service Locator.\n\tconstructor(locator) {\n\t\t// you custom modules\n\t\tthis.berry = locator.resolve('berry');\n\t\t// Catberry's modules\n\t\tthis.config = locator.resolve('config');\n\t\tthis.logger = locator.resolve('logger');\n\t}\n}\n```\n\nAlso, you can share the same instance across all modules in the application:\n\n```javascript\ncat.locator.register('cat', Cat);\n// Berry will be a singleton\ncat.locator.register('berry', Berry, true);\n\nconst cat1 = cat.locator.resolve('cat');\nconst cat2 = cat.locator.resolve('cat');\n\nconsole.log(cat1.berry === cat2.berry); // true\n```\n\nOr if you have an instance itself instead of its constructor you can do following:\n\n```javascript\ncat.locator.register('cat', Cat);\n// Berry is registered as an instance\ncat.locator.registerInstance('berry', {berryType: 'black'});\n\nconst cat1 = cat.locator.resolve('cat');\nconst cat2 = cat.locator.resolve('cat');\n\nconsole.log(cat1.berry === cat2.berry); // true\n```\n\nAnother possible options is to register a list of implementations and to resolve\nall the instances as a list:\n\n```javascript\ncat.locator.register('cat', BlackCat);\ncat.locator.register('cat', WhiteCat);\ncat.locator.register('cat', OrangeCat);\n\nconst allTheCats = cat.locator.resolveAll('cat');\n\nconsole.log(allTheCats[0] instanceof OrangeCat); // true\nconsole.log(allTheCats[1] instanceof WhiteCat); // true\nconsole.log(allTheCats[2] instanceof BlackCat); // true\n```\n\nPlease keep in mind that the last registered implementation will be the first in\nthe resolved list.\n\n### Interface\n\nCatberry's Service Locator implementation has following methods:\n\n```javascript\n/**\n * Implements a Service Locator pattern.\n */\nclass ServiceLocator {\n\t/**\n\t * Registers a new type name in the service locator.\n\t * @param {string} type The type name used as a key for resolving instances.\n\t * @param {Function} implementation The implementation (constructor or class)\n\t * which creates instances of the specified type name.\n\t * @param {boolean?} isSingleton If true then the only instance will\n\t * be created on the first \"resolve\" call and next calls will\n\t * return this instance.\n\t */\n\tregister(type, implementation, isSingleton) {}\n\n\t/**\n\t * Registers a single instance for the specified type.\n\t * @param {string} type The type name for resolving the instance.\n\t * @param {Object} instance The instance to register.\n\t */\n\tregisterInstance(type, instance) {}\n\n\t/**\n\t * Resolves the last registered implementation by the type name.\n\t * @param {string} type The type name to resolve.\n\t * @returns {Object} The instance of the specified type name.\n\t */\n\tresolve(type) {}\n\n\t/**\n\t * Resolves all registered implementations by the type name.\n\t * @param {string} type The type name for resolving instances.\n\t * @returns {Array} The list of instances of the specified type name.\n\t */\n\tresolveAll(type) {}\n\n\t/**\n\t * Unregisters all registrations of the specified type name.\n\t * @param {string} type The type name for deleting the registrations.\n\t */\n\tunregister(type) {}\n}\n```\n\n## Contributing\n\nThere are a lot of ways to contribute:\n\n* Give it a star\n* Join the [Gitter](https://gitter.im/catberry/catberry) room and leave a feedback or help with answering users' questions\n* [Submit a bug or a feature request](https://github.com/catberry/catberry-locator/issues)\n* [Submit a PR](https://github.com/catberry/catberry-locator/blob/develop/CONTRIBUTING.md)\n\nDenis Rechkunov <denis.rechkunov@gmail.com>\n","maintainers":[{"email":"denis@rdner.de","name":"rdner"}],"time":{"modified":"2022-06-13T05:40:54.223Z","created":"2014-04-15T13:00:56.902Z","0.4.0":"2014-04-15T13:00:56.902Z","1.0.1":"2014-07-20T05:03:12.522Z","1.0.2":"2014-07-20T14:10:34.325Z","1.0.3":"2014-09-11T12:27:02.256Z","1.1.0":"2014-09-12T06:14:23.416Z","1.1.1":"2014-09-24T08:20:02.723Z","1.1.2":"2014-10-31T09:32:23.422Z","1.1.3":"2015-02-16T09:46:48.670Z","1.1.4":"2015-02-16T11:51:02.940Z","1.1.5":"2015-06-07T09:32:28.710Z","1.1.6":"2015-06-14T06:03:57.476Z","1.1.7":"2015-08-16T06:41:06.257Z","1.1.8":"2015-11-11T05:45:02.514Z","1.1.9":"2015-11-11T09:37:21.107Z","1.1.10":"2015-12-12T20:27:50.319Z","2.0.0":"2016-02-20T14:13:39.246Z","2.1.0":"2016-03-04T20:13:20.899Z","2.2.0":"2016-08-23T18:11:21.063Z","2.2.1":"2017-03-18T16:50:34.771Z"},"homepage":"https://github.com/catberry/catberry-locator","keywords":["catberry","service locator","locator","registry","modules","IoC"],"repository":{"type":"git","url":"git://github.com/catberry/catberry-locator.git"},"author":{"name":"Denis Rechkunov","email":"denis.rechkunov@gmail.com"},"bugs":{"url":"https://github.com/catberry/catberry-locator/issues","email":"denis.rechkunov@gmail.com"},"readmeFilename":"README.md","users":{"juliarechkunova":true,"pragmadash":true,"nubuck":true},"license":"MIT"}