{"action":"created","comment":{"url":"https://api.github.com/repos/sonatype/nexus-oss/pulls/comments/35557899","id":35557899,"diff_hunk":"@@ -43,18 +48,34 @@ public void start(BundleContext bundleContext) throws Exception {\n     final String args = bundleContext.getProperty(\"nexus-args\");\n \n     MDC.put(\"userId\", SYSTEM_USERID);\n-    server = new Launcher(basePath, null, null, args.split(\",\"));\n-    server.startAsync();\n+    launcher = new Launcher(basePath, null, null, args.split(\",\"));\n+    launcher.startAsync();\n+\n+    connectorConfigurationServiceListener = new ConnectorConfigurationServiceListener(\n+        bundleContext,\n+        launcher.getServer()\n+    );\n+    final String connectorFilter = \"(objectclass=\" + ConnectorConfiguration.class.getName() + \")\";\n+    bundleContext.addServiceListener(connectorConfigurationServiceListener, connectorFilter);\n+\n+    // activate so far registered ones\n+    ServiceReference<?> references[] = bundleContext.getServiceReferences((String) null, connectorFilter);","path":"components/nexus-bootstrap/src/main/java/org/sonatype/nexus/bootstrap/osgi/LauncherActivator.java","position":53,"original_position":53,"commit_id":"a3bb3510ab5a52b2cb302f37f7afda6408590587","original_commit_id":"a3bb3510ab5a52b2cb302f37f7afda6408590587","user":{"login":"sonatype-zion","id":1497996,"avatar_url":"https://avatars.githubusercontent.com/u/1497996?v=3","gravatar_id":"","url":"https://api.github.com/users/sonatype-zion","html_url":"https://github.com/sonatype-zion","followers_url":"https://api.github.com/users/sonatype-zion/followers","following_url":"https://api.github.com/users/sonatype-zion/following{/other_user}","gists_url":"https://api.github.com/users/sonatype-zion/gists{/gist_id}","starred_url":"https://api.github.com/users/sonatype-zion/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sonatype-zion/subscriptions","organizations_url":"https://api.github.com/users/sonatype-zion/orgs","repos_url":"https://api.github.com/users/sonatype-zion/repos","events_url":"https://api.github.com/users/sonatype-zion/events{/privacy}","received_events_url":"https://api.github.com/users/sonatype-zion/received_events","type":"User","site_admin":false},"body":"![MINOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-minor.png) Move the array designator from the variable to the type. [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](http://nemo.sonarqube.org/coding_rules#rule_key=squid%3AS1197)\n","created_at":"2015-07-27T16:47:05Z","updated_at":"2015-07-27T16:47:05Z","html_url":"https://github.com/sonatype/nexus-oss/pull/1602#discussion_r35557899","pull_request_url":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602","_links":{"self":{"href":"https://api.github.com/repos/sonatype/nexus-oss/pulls/comments/35557899"},"html":{"href":"https://github.com/sonatype/nexus-oss/pull/1602#discussion_r35557899"},"pull_request":{"href":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602"}}},"pull_request":{"url":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602","id":40772152,"html_url":"https://github.com/sonatype/nexus-oss/pull/1602","diff_url":"https://github.com/sonatype/nexus-oss/pull/1602.diff","patch_url":"https://github.com/sonatype/nexus-oss/pull/1602.patch","issue_url":"https://api.github.com/repos/sonatype/nexus-oss/issues/1602","number":1602,"state":"open","locked":false,"title":"NEXUS-8853: Jetty Connector Manager","user":{"login":"cstamas","id":45165,"avatar_url":"https://avatars.githubusercontent.com/u/45165?v=3","gravatar_id":"","url":"https://api.github.com/users/cstamas","html_url":"https://github.com/cstamas","followers_url":"https://api.github.com/users/cstamas/followers","following_url":"https://api.github.com/users/cstamas/following{/other_user}","gists_url":"https://api.github.com/users/cstamas/gists{/gist_id}","starred_url":"https://api.github.com/users/cstamas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cstamas/subscriptions","organizations_url":"https://api.github.com/users/cstamas/orgs","repos_url":"https://api.github.com/users/cstamas/repos","events_url":"https://api.github.com/users/cstamas/events{/privacy}","received_events_url":"https://api.github.com/users/cstamas/received_events","type":"User","site_admin":false},"body":"Add ability to expose repository endpoints, with HTTP and HTTPS support, while obeying general and user configurations.\r\n\r\nNote: OSGi voodoo/karma needed! This PR contains the _same_ hack Alin has, as I could not make container expose the service in a proper way.\r\n\r\nIn short: introduces JettyConnectorManager component that allows programmatic addition of Jetty ServerConnectors. The IT demonstrates it by:\r\na) querying available connector schemas (IT enables HTTPS, so HTTP and HTTPS expected)\r\nb) adds a \"dummy\" HTTP connector\r\nc) adds a \"dummy\" HTTPS connector\r\n\r\nIn both b) and c) case connector receives a \"customiser\" that customises the request like it would be for the following URI (and verifies it is okay, by response and content checks).\r\n\r\nhttp://localhost:1234/repository/maven-central/org/eclipse/jetty/maven-metadata.xml\r\n\r\nBasically _whatever_ comes in thru newly added connectors, will be rewritten to access that URI above, like it entered thru \"normal\" connector(s). No outbound proxying to same instance happens.\r\n\r\nCI\r\nhttp://bamboo.s/browse/NX3-OSSF607","created_at":"2015-07-24T12:58:40Z","updated_at":"2015-07-27T16:47:05Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e5d747831618e516364413e3a9abe61f721d7475","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602/commits","review_comments_url":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602/comments","review_comment_url":"https://api.github.com/repos/sonatype/nexus-oss/pulls/comments{/number}","comments_url":"https://api.github.com/repos/sonatype/nexus-oss/issues/1602/comments","statuses_url":"https://api.github.com/repos/sonatype/nexus-oss/statuses/a3bb3510ab5a52b2cb302f37f7afda6408590587","head":{"label":"sonatype:jetty-connector-mgr","ref":"jetty-connector-mgr","sha":"a3bb3510ab5a52b2cb302f37f7afda6408590587","user":{"login":"sonatype","id":44938,"avatar_url":"https://avatars.githubusercontent.com/u/44938?v=3","gravatar_id":"","url":"https://api.github.com/users/sonatype","html_url":"https://github.com/sonatype","followers_url":"https://api.github.com/users/sonatype/followers","following_url":"https://api.github.com/users/sonatype/following{/other_user}","gists_url":"https://api.github.com/users/sonatype/gists{/gist_id}","starred_url":"https://api.github.com/users/sonatype/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sonatype/subscriptions","organizations_url":"https://api.github.com/users/sonatype/orgs","repos_url":"https://api.github.com/users/sonatype/repos","events_url":"https://api.github.com/users/sonatype/events{/privacy}","received_events_url":"https://api.github.com/users/sonatype/received_events","type":"Organization","site_admin":false},"repo":{"id":10146961,"name":"nexus-oss","full_name":"sonatype/nexus-oss","owner":{"login":"sonatype","id":44938,"avatar_url":"https://avatars.githubusercontent.com/u/44938?v=3","gravatar_id":"","url":"https://api.github.com/users/sonatype","html_url":"https://github.com/sonatype","followers_url":"https://api.github.com/users/sonatype/followers","following_url":"https://api.github.com/users/sonatype/following{/other_user}","gists_url":"https://api.github.com/users/sonatype/gists{/gist_id}","starred_url":"https://api.github.com/users/sonatype/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sonatype/subscriptions","organizations_url":"https://api.github.com/users/sonatype/orgs","repos_url":"https://api.github.com/users/sonatype/repos","events_url":"https://api.github.com/users/sonatype/events{/privacy}","received_events_url":"https://api.github.com/users/sonatype/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/sonatype/nexus-oss","description":"Sonatype Nexus OSS","fork":false,"url":"https://api.github.com/repos/sonatype/nexus-oss","forks_url":"https://api.github.com/repos/sonatype/nexus-oss/forks","keys_url":"https://api.github.com/repos/sonatype/nexus-oss/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sonatype/nexus-oss/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sonatype/nexus-oss/teams","hooks_url":"https://api.github.com/repos/sonatype/nexus-oss/hooks","issue_events_url":"https://api.github.com/repos/sonatype/nexus-oss/issues/events{/number}","events_url":"https://api.github.com/repos/sonatype/nexus-oss/events","assignees_url":"https://api.github.com/repos/sonatype/nexus-oss/assignees{/user}","branches_url":"https://api.github.com/repos/sonatype/nexus-oss/branches{/branch}","tags_url":"https://api.github.com/repos/sonatype/nexus-oss/tags","blobs_url":"https://api.github.com/repos/sonatype/nexus-oss/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sonatype/nexus-oss/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sonatype/nexus-oss/git/refs{/sha}","trees_url":"https://api.github.com/repos/sonatype/nexus-oss/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sonatype/nexus-oss/statuses/{sha}","languages_url":"https://api.github.com/repos/sonatype/nexus-oss/languages","stargazers_url":"https://api.github.com/repos/sonatype/nexus-oss/stargazers","contributors_url":"https://api.github.com/repos/sonatype/nexus-oss/contributors","subscribers_url":"https://api.github.com/repos/sonatype/nexus-oss/subscribers","subscription_url":"https://api.github.com/repos/sonatype/nexus-oss/subscription","commits_url":"https://api.github.com/repos/sonatype/nexus-oss/commits{/sha}","git_commits_url":"https://api.github.com/repos/sonatype/nexus-oss/git/commits{/sha}","comments_url":"https://api.github.com/repos/sonatype/nexus-oss/comments{/number}","issue_comment_url":"https://api.github.com/repos/sonatype/nexus-oss/issues/comments{/number}","contents_url":"https://api.github.com/repos/sonatype/nexus-oss/contents/{+path}","compare_url":"https://api.github.com/repos/sonatype/nexus-oss/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sonatype/nexus-oss/merges","archive_url":"https://api.github.com/repos/sonatype/nexus-oss/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sonatype/nexus-oss/downloads","issues_url":"https://api.github.com/repos/sonatype/nexus-oss/issues{/number}","pulls_url":"https://api.github.com/repos/sonatype/nexus-oss/pulls{/number}","milestones_url":"https://api.github.com/repos/sonatype/nexus-oss/milestones{/number}","notifications_url":"https://api.github.com/repos/sonatype/nexus-oss/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sonatype/nexus-oss/labels{/name}","releases_url":"https://api.github.com/repos/sonatype/nexus-oss/releases{/id}","created_at":"2013-05-18T20:48:57Z","updated_at":"2015-07-26T18:57:28Z","pushed_at":"2015-07-27T16:29:55Z","git_url":"git://github.com/sonatype/nexus-oss.git","ssh_url":"git@github.com:sonatype/nexus-oss.git","clone_url":"https://github.com/sonatype/nexus-oss.git","svn_url":"https://github.com/sonatype/nexus-oss","homepage":"http://links.sonatype.com/products/nexus/oss/home","size":896237,"stargazers_count":168,"watchers_count":168,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":108,"mirror_url":null,"open_issues_count":16,"forks":108,"open_issues":16,"watchers":168,"default_branch":"master"}},"base":{"label":"sonatype:master","ref":"master","sha":"537633d0f4036fce6d9060b2e481966885942fd0","user":{"login":"sonatype","id":44938,"avatar_url":"https://avatars.githubusercontent.com/u/44938?v=3","gravatar_id":"","url":"https://api.github.com/users/sonatype","html_url":"https://github.com/sonatype","followers_url":"https://api.github.com/users/sonatype/followers","following_url":"https://api.github.com/users/sonatype/following{/other_user}","gists_url":"https://api.github.com/users/sonatype/gists{/gist_id}","starred_url":"https://api.github.com/users/sonatype/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sonatype/subscriptions","organizations_url":"https://api.github.com/users/sonatype/orgs","repos_url":"https://api.github.com/users/sonatype/repos","events_url":"https://api.github.com/users/sonatype/events{/privacy}","received_events_url":"https://api.github.com/users/sonatype/received_events","type":"Organization","site_admin":false},"repo":{"id":10146961,"name":"nexus-oss","full_name":"sonatype/nexus-oss","owner":{"login":"sonatype","id":44938,"avatar_url":"https://avatars.githubusercontent.com/u/44938?v=3","gravatar_id":"","url":"https://api.github.com/users/sonatype","html_url":"https://github.com/sonatype","followers_url":"https://api.github.com/users/sonatype/followers","following_url":"https://api.github.com/users/sonatype/following{/other_user}","gists_url":"https://api.github.com/users/sonatype/gists{/gist_id}","starred_url":"https://api.github.com/users/sonatype/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sonatype/subscriptions","organizations_url":"https://api.github.com/users/sonatype/orgs","repos_url":"https://api.github.com/users/sonatype/repos","events_url":"https://api.github.com/users/sonatype/events{/privacy}","received_events_url":"https://api.github.com/users/sonatype/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/sonatype/nexus-oss","description":"Sonatype Nexus OSS","fork":false,"url":"https://api.github.com/repos/sonatype/nexus-oss","forks_url":"https://api.github.com/repos/sonatype/nexus-oss/forks","keys_url":"https://api.github.com/repos/sonatype/nexus-oss/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sonatype/nexus-oss/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sonatype/nexus-oss/teams","hooks_url":"https://api.github.com/repos/sonatype/nexus-oss/hooks","issue_events_url":"https://api.github.com/repos/sonatype/nexus-oss/issues/events{/number}","events_url":"https://api.github.com/repos/sonatype/nexus-oss/events","assignees_url":"https://api.github.com/repos/sonatype/nexus-oss/assignees{/user}","branches_url":"https://api.github.com/repos/sonatype/nexus-oss/branches{/branch}","tags_url":"https://api.github.com/repos/sonatype/nexus-oss/tags","blobs_url":"https://api.github.com/repos/sonatype/nexus-oss/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sonatype/nexus-oss/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sonatype/nexus-oss/git/refs{/sha}","trees_url":"https://api.github.com/repos/sonatype/nexus-oss/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sonatype/nexus-oss/statuses/{sha}","languages_url":"https://api.github.com/repos/sonatype/nexus-oss/languages","stargazers_url":"https://api.github.com/repos/sonatype/nexus-oss/stargazers","contributors_url":"https://api.github.com/repos/sonatype/nexus-oss/contributors","subscribers_url":"https://api.github.com/repos/sonatype/nexus-oss/subscribers","subscription_url":"https://api.github.com/repos/sonatype/nexus-oss/subscription","commits_url":"https://api.github.com/repos/sonatype/nexus-oss/commits{/sha}","git_commits_url":"https://api.github.com/repos/sonatype/nexus-oss/git/commits{/sha}","comments_url":"https://api.github.com/repos/sonatype/nexus-oss/comments{/number}","issue_comment_url":"https://api.github.com/repos/sonatype/nexus-oss/issues/comments{/number}","contents_url":"https://api.github.com/repos/sonatype/nexus-oss/contents/{+path}","compare_url":"https://api.github.com/repos/sonatype/nexus-oss/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sonatype/nexus-oss/merges","archive_url":"https://api.github.com/repos/sonatype/nexus-oss/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sonatype/nexus-oss/downloads","issues_url":"https://api.github.com/repos/sonatype/nexus-oss/issues{/number}","pulls_url":"https://api.github.com/repos/sonatype/nexus-oss/pulls{/number}","milestones_url":"https://api.github.com/repos/sonatype/nexus-oss/milestones{/number}","notifications_url":"https://api.github.com/repos/sonatype/nexus-oss/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sonatype/nexus-oss/labels{/name}","releases_url":"https://api.github.com/repos/sonatype/nexus-oss/releases{/id}","created_at":"2013-05-18T20:48:57Z","updated_at":"2015-07-26T18:57:28Z","pushed_at":"2015-07-27T16:29:55Z","git_url":"git://github.com/sonatype/nexus-oss.git","ssh_url":"git@github.com:sonatype/nexus-oss.git","clone_url":"https://github.com/sonatype/nexus-oss.git","svn_url":"https://github.com/sonatype/nexus-oss","homepage":"http://links.sonatype.com/products/nexus/oss/home","size":896237,"stargazers_count":168,"watchers_count":168,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":108,"mirror_url":null,"open_issues_count":16,"forks":108,"open_issues":16,"watchers":168,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602"},"html":{"href":"https://github.com/sonatype/nexus-oss/pull/1602"},"issue":{"href":"https://api.github.com/repos/sonatype/nexus-oss/issues/1602"},"comments":{"href":"https://api.github.com/repos/sonatype/nexus-oss/issues/1602/comments"},"review_comments":{"href":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602/comments"},"review_comment":{"href":"https://api.github.com/repos/sonatype/nexus-oss/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/sonatype/nexus-oss/pulls/1602/commits"},"statuses":{"href":"https://api.github.com/repos/sonatype/nexus-oss/statuses/a3bb3510ab5a52b2cb302f37f7afda6408590587"}}}}