{"action":"created","comment":{"url":"https://api.github.com/repos/telstra/open-kilda/pulls/comments/237906623","pull_request_review_id":180326147,"id":237906623,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIzNzkwNjYyMw==","diff_hunk":"@@ -21,90 +21,46 @@\n import org.openkilda.messaging.nbtopology.request.GetLinksRequest;\n import org.openkilda.messaging.nbtopology.request.LinkPropsGet;\n import org.openkilda.messaging.nbtopology.response.LinkPropsData;\n-import org.openkilda.model.SwitchId;\n-import org.openkilda.pce.provider.Auth;\n-import org.openkilda.wfm.topology.nbworker.converters.LinksConverter;\n+import org.openkilda.persistence.PersistenceManager;\n+import org.openkilda.wfm.share.mappers.IslMapper;\n \n import org.apache.storm.topology.OutputFieldsDeclarer;\n import org.apache.storm.tuple.Fields;\n import org.apache.storm.tuple.Tuple;\n-import org.neo4j.driver.v1.Session;\n-import org.neo4j.driver.v1.StatementResult;\n-import org.neo4j.driver.v1.Value;\n \n-import java.util.HashMap;\n+import java.util.Collections;\n import java.util.List;\n-import java.util.Map;\n-import java.util.Optional;\n import java.util.stream.Collectors;\n \n-public class LinkOperationsBolt extends NeoOperationsBolt {\n-    public LinkOperationsBolt(Auth neoAuth) {\n-        super(neoAuth);\n+public class LinkOperationsBolt extends PersistenceOperationsBolt {\n+    public LinkOperationsBolt(PersistenceManager persistenceManager) {\n+        super(persistenceManager);\n     }\n \n     @Override\n-    List<? extends InfoData> processRequest(Tuple tuple, BaseRequest request, Session session) {\n+    @SuppressWarnings(\"unchecked\")\n+    List<InfoData> processRequest(Tuple tuple, BaseRequest request) {\n         List<? extends InfoData> result = null;\n         if (request instanceof GetLinksRequest) {\n-            result = getAllLinks(session);\n+            result = getAllLinks();\n         } else if (request instanceof LinkPropsGet) {\n-            result = getLinkProps((LinkPropsGet) request, session);\n+            result = getLinkProps((LinkPropsGet) request);\n         } else {\n             unhandledInput(tuple);\n         }\n \n-        return result;\n+        return (List<InfoData>) result;\n     }\n \n-    private List<IslInfoData> getAllLinks(Session session) {\n-        log.debug(\"Processing get all links request\");\n-        String q =\n-                \"MATCH (:switch)-[isl:isl]->(:switch) \"\n-                        + \"RETURN isl\";\n-\n-        StatementResult queryResults = session.run(q);\n-        List<IslInfoData> results = queryResults.list()\n-                .stream()\n-                .map(record -> record.get(\"isl\"))\n-                .map(Value::asRelationship)\n-                .map(LinksConverter::toIslInfoData)\n+    private List<IslInfoData> getAllLinks() {\n+        return repositoryFactory.createIslRepository().findAll().stream()\n+                .map(IslMapper.INSTANCE::map)\n                 .collect(Collectors.toList());\n-        log.debug(\"Found {} links in the database\", results.size());\n-        return results;\n     }\n \n-    private List<LinkPropsData> getLinkProps(LinkPropsGet request, Session session) {\n-        log.debug(\"Processing get link props request\");\n-        String q = \"MATCH (props:link_props) \"\n-                + \"WHERE ({src_switch} IS NULL OR props.src_switch={src_switch}) \"\n-                + \"AND ({src_port} IS NULL OR props.src_port={src_port}) \"\n-                + \"AND ({dst_switch} IS NULL OR props.dst_switch={dst_switch}) \"\n-                + \"AND ({dst_port} IS NULL OR props.dst_port={dst_port}) \"\n-                + \"RETURN props\";\n-\n-        Map<String, Object> parameters = new HashMap<>();\n-        String srcSwitch = Optional.ofNullable(request.getSource().getDatapath())\n-                .map(SwitchId::toString)\n-                .orElse(null);\n-        parameters.put(\"src_switch\", srcSwitch);\n-        parameters.put(\"src_port\", request.getSource().getPortNumber());\n-        String dstSwitch = Optional.ofNullable(request.getDestination().getDatapath())\n-                .map(SwitchId::toString)\n-                .orElse(null);\n-        parameters.put(\"dst_switch\", dstSwitch);\n-        parameters.put(\"dst_port\", request.getDestination().getPortNumber());\n-\n-        StatementResult queryResults = session.run(q, parameters);\n-        List<LinkPropsData> results = queryResults.list()\n-                .stream()\n-                .map(record -> record.get(\"props\"))\n-                .map(Value::asNode)\n-                .map(LinksConverter::toLinkPropsData)\n-                .collect(Collectors.toList());\n-\n-        log.debug(\"Found {} link props in the database\", results.size());\n-        return results;\n+    private List<LinkPropsData> getLinkProps(LinkPropsGet request) {\n+        // TODO: should be re-implemented in the scope of TE refactoring.","path":"services/wfm/src/main/java/org/openkilda/wfm/topology/nbworker/bolts/LinkOperationsBolt.java","position":103,"original_position":103,"commit_id":"02c5f5163ee46627630aba3927ce7e0c9e4b7150","original_commit_id":"02c5f5163ee46627630aba3927ce7e0c9e4b7150","user":{"login":"sonarcloud[bot]","id":39514782,"node_id":"MDM6Qm90Mzk1MTQ3ODI=","avatar_url":"https://avatars2.githubusercontent.com/in/12526?v=4","gravatar_id":"","url":"https://api.github.com/users/sonarcloud%5Bbot%5D","html_url":"https://github.com/apps/sonarcloud","followers_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/followers","following_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/repos","events_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/sonarcloud%5Bbot%5D/received_events","type":"Bot","site_admin":false},"body":"![Code Smell](https://sonarsource.github.io/sonar-github/code_smell.png 'Code Smell') Code Smell: Complete the task associated to this TODO comment. ([squid:S1135](https://sonarcloud.io/organizations/open-kilda/rules#rule_key=squid%3AS1135))\n\n[See it in SonarCloud](https://sonarcloud.io/project/issues?id=org.openkilda.wfm%3AWorkflowManager&pullRequest=1448&issues=AWaM0vZTYAGQNfrBK5Sv&open=AWaM0vZTYAGQNfrBK5Sv)\n\n[ISSUE_KEY]: AWaM0vZTYAGQNfrBK5Sv","created_at":"2018-11-30T15:52:22Z","updated_at":"2018-11-30T15:52:24Z","html_url":"https://github.com/telstra/open-kilda/pull/1448#discussion_r237906623","pull_request_url":"https://api.github.com/repos/telstra/open-kilda/pulls/1448","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/telstra/open-kilda/pulls/comments/237906623"},"html":{"href":"https://github.com/telstra/open-kilda/pull/1448#discussion_r237906623"},"pull_request":{"href":"https://api.github.com/repos/telstra/open-kilda/pulls/1448"}}},"pull_request":{"url":"https://api.github.com/repos/telstra/open-kilda/pulls/1448","id":222509865,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIyNTA5ODY1","html_url":"https://github.com/telstra/open-kilda/pull/1448","diff_url":"https://github.com/telstra/open-kilda/pull/1448.diff","patch_url":"https://github.com/telstra/open-kilda/pull/1448.patch","issue_url":"https://api.github.com/repos/telstra/open-kilda/issues/1448","number":1448,"state":"open","locked":false,"title":"Reimplement PathComputation and NeoOperationsBolts to use DAO","user":{"login":"sergii-iakovenko","id":7511304,"node_id":"MDQ6VXNlcjc1MTEzMDQ=","avatar_url":"https://avatars0.githubusercontent.com/u/7511304?v=4","gravatar_id":"","url":"https://api.github.com/users/sergii-iakovenko","html_url":"https://github.com/sergii-iakovenko","followers_url":"https://api.github.com/users/sergii-iakovenko/followers","following_url":"https://api.github.com/users/sergii-iakovenko/following{/other_user}","gists_url":"https://api.github.com/users/sergii-iakovenko/gists{/gist_id}","starred_url":"https://api.github.com/users/sergii-iakovenko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sergii-iakovenko/subscriptions","organizations_url":"https://api.github.com/users/sergii-iakovenko/orgs","repos_url":"https://api.github.com/users/sergii-iakovenko/repos","events_url":"https://api.github.com/users/sergii-iakovenko/events{/privacy}","received_events_url":"https://api.github.com/users/sergii-iakovenko/received_events","type":"User","site_admin":false},"body":"The changes:\r\n- Reimplement PathComputation to use DAO:\r\n- Reimplement NeoOperationsBolts (FlowOperationsBolt, LinkOperationsBolt, SwitchOpearationsBolt)\r\n\r\nFollows the solution #1127.\r\n\r\nResolves #1407\r\n\r\n**This must be merged right after #1398. Don't forget to change the base.**","created_at":"2018-10-12T15:46:45Z","updated_at":"2018-11-30T15:52:23Z","closed_at":null,"merged_at":null,"merge_commit_sha":"347a0dfeb9dd004e3452413786a759c711a38d63","assignee":null,"assignees":[],"requested_reviewers":[{"login":"nikitamarchenko","id":3450363,"node_id":"MDQ6VXNlcjM0NTAzNjM=","avatar_url":"https://avatars3.githubusercontent.com/u/3450363?v=4","gravatar_id":"","url":"https://api.github.com/users/nikitamarchenko","html_url":"https://github.com/nikitamarchenko","followers_url":"https://api.github.com/users/nikitamarchenko/followers","following_url":"https://api.github.com/users/nikitamarchenko/following{/other_user}","gists_url":"https://api.github.com/users/nikitamarchenko/gists{/gist_id}","starred_url":"https://api.github.com/users/nikitamarchenko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikitamarchenko/subscriptions","organizations_url":"https://api.github.com/users/nikitamarchenko/orgs","repos_url":"https://api.github.com/users/nikitamarchenko/repos","events_url":"https://api.github.com/users/nikitamarchenko/events{/privacy}","received_events_url":"https://api.github.com/users/nikitamarchenko/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":935982807,"node_id":"MDU6TGFiZWw5MzU5ODI4MDc=","url":"https://api.github.com/repos/telstra/open-kilda/labels/C/CACHE","name":"C/CACHE","color":"cf6fe2","default":false},{"id":935983223,"node_id":"MDU6TGFiZWw5MzU5ODMyMjM=","url":"https://api.github.com/repos/telstra/open-kilda/labels/C/FLOW","name":"C/FLOW","color":"e0cd62","default":false},{"id":936014286,"node_id":"MDU6TGFiZWw5MzYwMTQyODY=","url":"https://api.github.com/repos/telstra/open-kilda/labels/C/NB","name":"C/NB","color":"31ed3e","default":false},{"id":937212582,"node_id":"MDU6TGFiZWw5MzcyMTI1ODI=","url":"https://api.github.com/repos/telstra/open-kilda/labels/C/NBWORKER","name":"C/NBWORKER","color":"f2879b","default":false},{"id":1135337137,"node_id":"MDU6TGFiZWwxMTM1MzM3MTM3","url":"https://api.github.com/repos/telstra/open-kilda/labels/On%20Review","name":"On Review","color":"fad201","default":false},{"id":1018531150,"node_id":"MDU6TGFiZWwxMDE4NTMxMTUw","url":"https://api.github.com/repos/telstra/open-kilda/labels/epic/hub@spoke","name":"epic/hub@spoke","color":"fff6bf","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/telstra/open-kilda/pulls/1448/commits","review_comments_url":"https://api.github.com/repos/telstra/open-kilda/pulls/1448/comments","review_comment_url":"https://api.github.com/repos/telstra/open-kilda/pulls/comments{/number}","comments_url":"https://api.github.com/repos/telstra/open-kilda/issues/1448/comments","statuses_url":"https://api.github.com/repos/telstra/open-kilda/statuses/02c5f5163ee46627630aba3927ce7e0c9e4b7150","head":{"label":"telstra:feature/pce-with-dao-refactoring","ref":"feature/pce-with-dao-refactoring","sha":"02c5f5163ee46627630aba3927ce7e0c9e4b7150","user":{"login":"telstra","id":3914896,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5MTQ4OTY=","avatar_url":"https://avatars2.githubusercontent.com/u/3914896?v=4","gravatar_id":"","url":"https://api.github.com/users/telstra","html_url":"https://github.com/telstra","followers_url":"https://api.github.com/users/telstra/followers","following_url":"https://api.github.com/users/telstra/following{/other_user}","gists_url":"https://api.github.com/users/telstra/gists{/gist_id}","starred_url":"https://api.github.com/users/telstra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/telstra/subscriptions","organizations_url":"https://api.github.com/users/telstra/orgs","repos_url":"https://api.github.com/users/telstra/repos","events_url":"https://api.github.com/users/telstra/events{/privacy}","received_events_url":"https://api.github.com/users/telstra/received_events","type":"Organization","site_admin":false},"repo":{"id":104974693,"node_id":"MDEwOlJlcG9zaXRvcnkxMDQ5NzQ2OTM=","name":"open-kilda","full_name":"telstra/open-kilda","private":false,"owner":{"login":"telstra","id":3914896,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5MTQ4OTY=","avatar_url":"https://avatars2.githubusercontent.com/u/3914896?v=4","gravatar_id":"","url":"https://api.github.com/users/telstra","html_url":"https://github.com/telstra","followers_url":"https://api.github.com/users/telstra/followers","following_url":"https://api.github.com/users/telstra/following{/other_user}","gists_url":"https://api.github.com/users/telstra/gists{/gist_id}","starred_url":"https://api.github.com/users/telstra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/telstra/subscriptions","organizations_url":"https://api.github.com/users/telstra/orgs","repos_url":"https://api.github.com/users/telstra/repos","events_url":"https://api.github.com/users/telstra/events{/privacy}","received_events_url":"https://api.github.com/users/telstra/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/telstra/open-kilda","description":"OpenKilda is an open-source OpenFlow controller initially designed for use in a global network with high control-plane latency and a heavy emphasis on latency-centric data path optimisation.","fork":false,"url":"https://api.github.com/repos/telstra/open-kilda","forks_url":"https://api.github.com/repos/telstra/open-kilda/forks","keys_url":"https://api.github.com/repos/telstra/open-kilda/keys{/key_id}","collaborators_url":"https://api.github.com/repos/telstra/open-kilda/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/telstra/open-kilda/teams","hooks_url":"https://api.github.com/repos/telstra/open-kilda/hooks","issue_events_url":"https://api.github.com/repos/telstra/open-kilda/issues/events{/number}","events_url":"https://api.github.com/repos/telstra/open-kilda/events","assignees_url":"https://api.github.com/repos/telstra/open-kilda/assignees{/user}","branches_url":"https://api.github.com/repos/telstra/open-kilda/branches{/branch}","tags_url":"https://api.github.com/repos/telstra/open-kilda/tags","blobs_url":"https://api.github.com/repos/telstra/open-kilda/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/telstra/open-kilda/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/telstra/open-kilda/git/refs{/sha}","trees_url":"https://api.github.com/repos/telstra/open-kilda/git/trees{/sha}","statuses_url":"https://api.github.com/repos/telstra/open-kilda/statuses/{sha}","languages_url":"https://api.github.com/repos/telstra/open-kilda/languages","stargazers_url":"https://api.github.com/repos/telstra/open-kilda/stargazers","contributors_url":"https://api.github.com/repos/telstra/open-kilda/contributors","subscribers_url":"https://api.github.com/repos/telstra/open-kilda/subscribers","subscription_url":"https://api.github.com/repos/telstra/open-kilda/subscription","commits_url":"https://api.github.com/repos/telstra/open-kilda/commits{/sha}","git_commits_url":"https://api.github.com/repos/telstra/open-kilda/git/commits{/sha}","comments_url":"https://api.github.com/repos/telstra/open-kilda/comments{/number}","issue_comment_url":"https://api.github.com/repos/telstra/open-kilda/issues/comments{/number}","contents_url":"https://api.github.com/repos/telstra/open-kilda/contents/{+path}","compare_url":"https://api.github.com/repos/telstra/open-kilda/compare/{base}...{head}","merges_url":"https://api.github.com/repos/telstra/open-kilda/merges","archive_url":"https://api.github.com/repos/telstra/open-kilda/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/telstra/open-kilda/downloads","issues_url":"https://api.github.com/repos/telstra/open-kilda/issues{/number}","pulls_url":"https://api.github.com/repos/telstra/open-kilda/pulls{/number}","milestones_url":"https://api.github.com/repos/telstra/open-kilda/milestones{/number}","notifications_url":"https://api.github.com/repos/telstra/open-kilda/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/telstra/open-kilda/labels{/name}","releases_url":"https://api.github.com/repos/telstra/open-kilda/releases{/id}","deployments_url":"https://api.github.com/repos/telstra/open-kilda/deployments","created_at":"2017-09-27T05:13:18Z","updated_at":"2018-11-30T11:07:32Z","pushed_at":"2018-11-30T15:17:42Z","git_url":"git://github.com/telstra/open-kilda.git","ssh_url":"git@github.com:telstra/open-kilda.git","clone_url":"https://github.com/telstra/open-kilda.git","svn_url":"https://github.com/telstra/open-kilda","homepage":"","size":212260,"stargazers_count":36,"watchers_count":36,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":32,"mirror_url":null,"archived":false,"open_issues_count":300,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":32,"open_issues":300,"watchers":36,"default_branch":"develop"}},"base":{"label":"telstra:feature/poc-model-and-dao-layer","ref":"feature/poc-model-and-dao-layer","sha":"59c7fb97998b70273917e0a562bcee2b7d65e867","user":{"login":"telstra","id":3914896,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5MTQ4OTY=","avatar_url":"https://avatars2.githubusercontent.com/u/3914896?v=4","gravatar_id":"","url":"https://api.github.com/users/telstra","html_url":"https://github.com/telstra","followers_url":"https://api.github.com/users/telstra/followers","following_url":"https://api.github.com/users/telstra/following{/other_user}","gists_url":"https://api.github.com/users/telstra/gists{/gist_id}","starred_url":"https://api.github.com/users/telstra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/telstra/subscriptions","organizations_url":"https://api.github.com/users/telstra/orgs","repos_url":"https://api.github.com/users/telstra/repos","events_url":"https://api.github.com/users/telstra/events{/privacy}","received_events_url":"https://api.github.com/users/telstra/received_events","type":"Organization","site_admin":false},"repo":{"id":104974693,"node_id":"MDEwOlJlcG9zaXRvcnkxMDQ5NzQ2OTM=","name":"open-kilda","full_name":"telstra/open-kilda","private":false,"owner":{"login":"telstra","id":3914896,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5MTQ4OTY=","avatar_url":"https://avatars2.githubusercontent.com/u/3914896?v=4","gravatar_id":"","url":"https://api.github.com/users/telstra","html_url":"https://github.com/telstra","followers_url":"https://api.github.com/users/telstra/followers","following_url":"https://api.github.com/users/telstra/following{/other_user}","gists_url":"https://api.github.com/users/telstra/gists{/gist_id}","starred_url":"https://api.github.com/users/telstra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/telstra/subscriptions","organizations_url":"https://api.github.com/users/telstra/orgs","repos_url":"https://api.github.com/users/telstra/repos","events_url":"https://api.github.com/users/telstra/events{/privacy}","received_events_url":"https://api.github.com/users/telstra/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/telstra/open-kilda","description":"OpenKilda is an open-source OpenFlow controller initially designed for use in a global network with high control-plane latency and a heavy emphasis on latency-centric data path optimisation.","fork":false,"url":"https://api.github.com/repos/telstra/open-kilda","forks_url":"https://api.github.com/repos/telstra/open-kilda/forks","keys_url":"https://api.github.com/repos/telstra/open-kilda/keys{/key_id}","collaborators_url":"https://api.github.com/repos/telstra/open-kilda/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/telstra/open-kilda/teams","hooks_url":"https://api.github.com/repos/telstra/open-kilda/hooks","issue_events_url":"https://api.github.com/repos/telstra/open-kilda/issues/events{/number}","events_url":"https://api.github.com/repos/telstra/open-kilda/events","assignees_url":"https://api.github.com/repos/telstra/open-kilda/assignees{/user}","branches_url":"https://api.github.com/repos/telstra/open-kilda/branches{/branch}","tags_url":"https://api.github.com/repos/telstra/open-kilda/tags","blobs_url":"https://api.github.com/repos/telstra/open-kilda/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/telstra/open-kilda/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/telstra/open-kilda/git/refs{/sha}","trees_url":"https://api.github.com/repos/telstra/open-kilda/git/trees{/sha}","statuses_url":"https://api.github.com/repos/telstra/open-kilda/statuses/{sha}","languages_url":"https://api.github.com/repos/telstra/open-kilda/languages","stargazers_url":"https://api.github.com/repos/telstra/open-kilda/stargazers","contributors_url":"https://api.github.com/repos/telstra/open-kilda/contributors","subscribers_url":"https://api.github.com/repos/telstra/open-kilda/subscribers","subscription_url":"https://api.github.com/repos/telstra/open-kilda/subscription","commits_url":"https://api.github.com/repos/telstra/open-kilda/commits{/sha}","git_commits_url":"https://api.github.com/repos/telstra/open-kilda/git/commits{/sha}","comments_url":"https://api.github.com/repos/telstra/open-kilda/comments{/number}","issue_comment_url":"https://api.github.com/repos/telstra/open-kilda/issues/comments{/number}","contents_url":"https://api.github.com/repos/telstra/open-kilda/contents/{+path}","compare_url":"https://api.github.com/repos/telstra/open-kilda/compare/{base}...{head}","merges_url":"https://api.github.com/repos/telstra/open-kilda/merges","archive_url":"https://api.github.com/repos/telstra/open-kilda/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/telstra/open-kilda/downloads","issues_url":"https://api.github.com/repos/telstra/open-kilda/issues{/number}","pulls_url":"https://api.github.com/repos/telstra/open-kilda/pulls{/number}","milestones_url":"https://api.github.com/repos/telstra/open-kilda/milestones{/number}","notifications_url":"https://api.github.com/repos/telstra/open-kilda/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/telstra/open-kilda/labels{/name}","releases_url":"https://api.github.com/repos/telstra/open-kilda/releases{/id}","deployments_url":"https://api.github.com/repos/telstra/open-kilda/deployments","created_at":"2017-09-27T05:13:18Z","updated_at":"2018-11-30T11:07:32Z","pushed_at":"2018-11-30T15:17:42Z","git_url":"git://github.com/telstra/open-kilda.git","ssh_url":"git@github.com:telstra/open-kilda.git","clone_url":"https://github.com/telstra/open-kilda.git","svn_url":"https://github.com/telstra/open-kilda","homepage":"","size":212260,"stargazers_count":36,"watchers_count":36,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":32,"mirror_url":null,"archived":false,"open_issues_count":300,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":32,"open_issues":300,"watchers":36,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/telstra/open-kilda/pulls/1448"},"html":{"href":"https://github.com/telstra/open-kilda/pull/1448"},"issue":{"href":"https://api.github.com/repos/telstra/open-kilda/issues/1448"},"comments":{"href":"https://api.github.com/repos/telstra/open-kilda/issues/1448/comments"},"review_comments":{"href":"https://api.github.com/repos/telstra/open-kilda/pulls/1448/comments"},"review_comment":{"href":"https://api.github.com/repos/telstra/open-kilda/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/telstra/open-kilda/pulls/1448/commits"},"statuses":{"href":"https://api.github.com/repos/telstra/open-kilda/statuses/02c5f5163ee46627630aba3927ce7e0c9e4b7150"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"sonarcloud"}}