{"action":"created","comment":{"url":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/comments/222660104","pull_request_review_id":161599380,"id":222660104,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMjY2MDEwNA==","diff_hunk":"@@ -0,0 +1,327 @@\n+/*\n+ * Hibernate, Relational Persistence for Idiomatic Java\n+ *\n+ * License: GNU Lesser General Public License (LGPL), version 2.1 or later\n+ * See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html\n+ */\n+package org.hibernate.graph.internal;\n+\n+import java.util.Collections;\n+import java.util.HashMap;\n+import java.util.Locale;\n+import java.util.Map;\n+\n+import org.hibernate.engine.spi.SessionFactoryImplementor;\n+import org.hibernate.graph.CannotContainSubGraphException;\n+import org.hibernate.graph.SubGraph;\n+import org.hibernate.graph.spi.AttributeNodeImplementor;\n+import org.hibernate.graph.spi.SubGraphImplementor;\n+import org.hibernate.internal.util.collections.CollectionHelper;\n+import org.hibernate.metamodel.model.domain.spi.AttributeImplementor;\n+import org.hibernate.metamodel.model.domain.spi.ManagedTypeImplementor;\n+import org.hibernate.metamodel.model.domain.spi.SimpleTypeImplementor;\n+\n+import org.jboss.logging.Logger;\n+\n+/**\n+ * Hibernate implementation of the JPA AttributeNode contract\n+ *\n+ * @author Steve Ebersole\n+ */\n+public class AttributeNodeImpl<J>\n+\t\textends AbstractGraphNode<J>\n+\t\timplements AttributeNodeImplementor<J> {\n+\tprivate final AttributeImplementor<?, J> attribute;\n+\n+\tprivate Map<Class<? extends J>, SubGraphImplementor<? extends J>> subGraphMap;\n+\tprivate Map<Class<? extends J>, SubGraphImplementor<? extends J>> keySubGraphMap;\n+\n+\t@SuppressWarnings(\"WeakerAccess\")\n+\tpublic <X> AttributeNodeImpl(\n+\t\t\tboolean mutable,\n+\t\t\tAttributeImplementor<X, J> attribute,\n+\t\t\tSessionFactoryImplementor sessionFactory) {\n+\t\tthis( mutable, attribute, null, null, sessionFactory );\n+\t}\n+\n+\t/**\n+\t * Intended only for use from making a copy\n+\t */\n+\tprivate AttributeNodeImpl(\n+\t\t\tboolean mutable,\n+\t\t\tAttributeImplementor<?, J> attribute,\n+\t\t\tMap<Class<? extends J>, SubGraphImplementor<? extends J>> subGraphMap,\n+\t\t\tMap<Class<? extends J>, SubGraphImplementor<? extends J>> keySubGraphMap,\n+\t\t\tSessionFactoryImplementor sessionFactory) {\n+\t\tsuper( mutable, sessionFactory );\n+\t\tthis.attribute = attribute;\n+\t\tthis.subGraphMap = subGraphMap;\n+\t\tthis.keySubGraphMap = keySubGraphMap;\n+\t}\n+\n+\t@Override\n+\tpublic String getAttributeName() {\n+\t\treturn getAttributeDescriptor().getName();\n+\t}\n+\n+\t@Override\n+\tpublic AttributeImplementor<?, J> getAttributeDescriptor() {\n+\t\treturn attribute;\n+\t}\n+\n+\t@Override\n+\t@SuppressWarnings(\"unchecked\")\n+\tpublic Map<Class<? extends J>, SubGraphImplementor<? extends J>> getSubGraphMap() {\n+\t\tif ( subGraphMap == null ) {\n+\t\t\treturn Collections.emptyMap();\n+\t\t}\n+\t\telse {\n+\t\t\treturn (Map) subGraphMap;\n+\t\t}\n+\t}\n+\n+\t@Override\n+\t@SuppressWarnings(\"unchecked\")\n+\tpublic Map<Class<? extends J>, SubGraphImplementor<? extends J>> getKeySubGraphMap() {\n+\t\tif ( keySubGraphMap == null ) {\n+\t\t\treturn Collections.emptyMap();\n+\t\t}\n+\t\telse {\n+\t\t\treturn keySubGraphMap;\n+\t\t}\n+\t}\n+\n+\t@Override\n+\tpublic SubGraphImplementor<J> makeSubGraph() {\n+\t\treturn internalMakeSubgraph( (Class<J>) null );\n+\t}\n+\n+\t@Override\n+\tpublic <S extends J> SubGraphImplementor<S> makeSubGraph(Class<S> subtype) {\n+\t\treturn internalMakeSubgraph( subtype );\n+\t}\n+\n+\t@Override\n+\tpublic <S extends J> SubGraphImplementor<S> makeSubGraph(ManagedTypeImplementor<S> subtype) {\n+\t\treturn internalMakeSubgraph( subtype );\n+\t}\n+\n+\tprivate <S extends J> SubGraphImplementor<S> internalMakeSubgraph(ManagedTypeImplementor<S> type) {\n+\t\tassert type != null;\n+\n+\t\tlog.debugf( \"Making sub-graph : ( (%s) %s )\", type.getName(), getAttributeName() );\n+\n+\t\tfinal SubGraphImplementor<S> subGraph = type.makeSubGraph();\n+\t\tinternalAddSubGraph( type.getJavaType(), subGraph );\n+\n+\t\treturn subGraph;\n+\t}\n+\n+\t@SuppressWarnings(\"unchecked\")\n+\tprivate <T extends J> ManagedTypeImplementor<T> valueGraphTypeAsManaged() {\n+\t\tfinal SimpleTypeImplementor<J> valueGraphType = (SimpleTypeImplementor) getAttributeDescriptor().getValueGraphType();\n+\n+\t\tif ( valueGraphType instanceof ManagedTypeImplementor ) {\n+\t\t\treturn (ManagedTypeImplementor) valueGraphType;\n+\t\t}\n+\n+\t\tthrow new CannotContainSubGraphException(\n+\t\t\t\tString.format(\n+\t\t\t\t\t\tLocale.ROOT,\n+\t\t\t\t\t\t\"Attribute [%s] (%s) cannot contain value sub-graphs\",\n+\t\t\t\t\t\tgetAttributeName(),\n+\t\t\t\t\t\tgetAttributeDescriptor().getPersistentAttributeType().name()\n+\t\t\t\t)\n+\t\t);\n+\t}\n+\n+\tprivate static final Logger log = Logger.getLogger( AttributeNodeImpl.class );\n+\n+\t@SuppressWarnings(\"unchecked\")\n+\tprivate <S extends J> SubGraphImplementor<S> internalMakeSubgraph(Class<S> subType) {\n+\t\tverifyMutability();\n+\n+\t\tfinal ManagedTypeImplementor<S> managedType = valueGraphTypeAsManaged();\n+\n+\t\tif ( subType == null ) {\n+\t\t\tsubType = managedType.getJavaType();\n+\t\t}\n+\n+\t\treturn internalMakeSubgraph( managedType.findSubType( subType ) );\n+\t}\n+\n+\t@SuppressWarnings({\"WeakerAccess\", \"unchecked\"})\n+\tprotected <S extends J> void internalAddSubGraph(Class<S> subType, SubGraphImplementor<S> subGraph) {\n+\t\tlog.tracef( \"Adding sub-graph : ( (%s) %s )\", subGraph.getGraphedType().getName(), getAttributeName() );\n+\n+\t\tif ( subGraphMap == null ) {\n+\t\t\tsubGraphMap = new HashMap<>();\n+\t\t}\n+\n+\t\tfinal SubGraphImplementor<? extends J> previous = subGraphMap.put( subType, (SubGraphImplementor) subGraph );\n+\t\tif ( previous != null ) {\n+\t\t\tlog.debugf( \"Adding sub-graph [%s] over-wrote existing [%]\", subGraph, previous );\n+\t\t}\n+\t}\n+\n+\t@Override\n+\t@SuppressWarnings(\"unchecked\")\n+\tpublic <S extends J> void addSubGraph(Class<S> subType, SubGraph<S> subGraph) {\n+\t\tverifyMutability();\n+\n+\t\tinternalAddSubGraph( subType, (SubGraphImplementor) subGraph );\n+\t}\n+\n+\t@Override\n+\tpublic SubGraphImplementor<J> makeKeySubGraph() {\n+\t\treturn internalMakeKeySubgraph( (Class<J>) null );\n+\t}\n+\n+\t@Override\n+\tpublic <S extends J> SubGraphImplementor<S> makeKeySubGraph(Class<S> subtype) {\n+\t\treturn internalMakeKeySubgraph( subtype );\n+\t}\n+\n+\t@Override\n+\tpublic <S extends J> SubGraphImplementor<S> makeKeySubGraph(ManagedTypeImplementor<S> subtype) {\n+\t\treturn internalMakeKeySubgraph( subtype );\n+\t}\n+\n+\tprivate <S extends J> SubGraphImplementor<S> internalMakeKeySubgraph(ManagedTypeImplementor<S> type) {\n+\n+\t\tlog.debugf( \"Making key sub-graph : ( (%s) %s )\", type.getName(), getAttributeName() );\n+\n+\t\tfinal SubGraphImplementor<S> subGraph = type.makeSubGraph();\n+\t\tinternalAddKeySubGraph( type.getJavaType(), subGraph );\n+\n+\t\treturn subGraph;\n+\t}\n+\n+\t@SuppressWarnings(\"unchecked\")\n+\tprivate <S extends J> SubGraphImplementor<S> internalMakeKeySubgraph(Class<S> type) {\n+\t\tverifyMutability();\n+\n+\t\tfinal ManagedTypeImplementor<S> managedType = keyGraphTypeAsManaged();\n+\n+\t\tfinal ManagedTypeImplementor<S> subType;\n+\n+\t\tif ( type == null ) {\n+\t\t\tsubType = managedType;\n+\t\t}\n+\t\telse {\n+\t\t\tsubType = managedType.findSubType( type );\n+\t\t}\n+\n+\t\tsubType.getJavaType();\n+\n+\t\treturn internalMakeKeySubgraph( subType );\n+\t}\n+\n+\t@SuppressWarnings({\"WeakerAccess\", \"unchecked\"})\n+\tprotected <S extends J> void internalAddKeySubGraph(Class<S> subType, SubGraph<S> subGraph) {\n+\t\tlog.tracef( \"Adding key sub-graph : ( (%s) %s )\", subType.getName(), getAttributeName() );\n+\n+\t\tif ( keySubGraphMap == null ) {\n+\t\t\tkeySubGraphMap = new HashMap<>();\n+\t\t}\n+\n+\t\tfinal SubGraphImplementor<? extends J> previous = keySubGraphMap.put( subType, (SubGraphImplementor) subGraph );\n+\t\tif ( previous != null ) {\n+\t\t\tlog.debugf( \"Adding key sub-graph [%s] over-wrote existing [%]\", subGraph, previous );","path":"hibernate-core/src/main/java/org/hibernate/graph/internal/AttributeNodeImpl.java","position":230,"original_position":230,"commit_id":"c38097dadc7af302b2868c74c6c4edac536c15ef","original_commit_id":"0c6cb983d44362583db2a7951e5d6e56e3ad821c","user":{"login":"aleksandarsusnjar","id":40366235,"node_id":"MDQ6VXNlcjQwMzY2MjM1","avatar_url":"https://avatars2.githubusercontent.com/u/40366235?v=4","gravatar_id":"","url":"https://api.github.com/users/aleksandarsusnjar","html_url":"https://github.com/aleksandarsusnjar","followers_url":"https://api.github.com/users/aleksandarsusnjar/followers","following_url":"https://api.github.com/users/aleksandarsusnjar/following{/other_user}","gists_url":"https://api.github.com/users/aleksandarsusnjar/gists{/gist_id}","starred_url":"https://api.github.com/users/aleksandarsusnjar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aleksandarsusnjar/subscriptions","organizations_url":"https://api.github.com/users/aleksandarsusnjar/orgs","repos_url":"https://api.github.com/users/aleksandarsusnjar/repos","events_url":"https://api.github.com/users/aleksandarsusnjar/events{/privacy}","received_events_url":"https://api.github.com/users/aleksandarsusnjar/received_events","type":"User","site_admin":false},"body":"I don't remember what was in the code I submitted but this should really never happen. It should be handled somewhere but, when adding graph specifications they should be merged. If this is meant to be handled outside then this is an unexpected state probably warranting an exception. If it is not meant to be handled outside then it should be handled here.","created_at":"2018-10-04T13:06:36Z","updated_at":"2018-10-04T13:06:37Z","html_url":"https://github.com/hibernate/hibernate-orm/pull/2558#discussion_r222660104","pull_request_url":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/comments/222660104"},"html":{"href":"https://github.com/hibernate/hibernate-orm/pull/2558#discussion_r222660104"},"pull_request":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558"}}},"pull_request":{"url":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558","id":220205784,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIwMjA1Nzg0","html_url":"https://github.com/hibernate/hibernate-orm/pull/2558","diff_url":"https://github.com/hibernate/hibernate-orm/pull/2558.diff","patch_url":"https://github.com/hibernate/hibernate-orm/pull/2558.patch","issue_url":"https://api.github.com/repos/hibernate/hibernate-orm/issues/2558","number":2558,"state":"open","locked":false,"title":"Hhh 12713","user":{"login":"sebersole","id":234515,"node_id":"MDQ6VXNlcjIzNDUxNQ==","avatar_url":"https://avatars3.githubusercontent.com/u/234515?v=4","gravatar_id":"","url":"https://api.github.com/users/sebersole","html_url":"https://github.com/sebersole","followers_url":"https://api.github.com/users/sebersole/followers","following_url":"https://api.github.com/users/sebersole/following{/other_user}","gists_url":"https://api.github.com/users/sebersole/gists{/gist_id}","starred_url":"https://api.github.com/users/sebersole/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebersole/subscriptions","organizations_url":"https://api.github.com/users/sebersole/orgs","repos_url":"https://api.github.com/users/sebersole/repos","events_url":"https://api.github.com/users/sebersole/events{/privacy}","received_events_url":"https://api.github.com/users/sebersole/received_events","type":"User","site_admin":false},"body":"Changes to the original PR - #2358","created_at":"2018-10-03T23:04:21Z","updated_at":"2018-10-04T13:06:37Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[{"login":"Naros","id":3255568,"node_id":"MDQ6VXNlcjMyNTU1Njg=","avatar_url":"https://avatars3.githubusercontent.com/u/3255568?v=4","gravatar_id":"","url":"https://api.github.com/users/Naros","html_url":"https://github.com/Naros","followers_url":"https://api.github.com/users/Naros/followers","following_url":"https://api.github.com/users/Naros/following{/other_user}","gists_url":"https://api.github.com/users/Naros/gists{/gist_id}","starred_url":"https://api.github.com/users/Naros/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Naros/subscriptions","organizations_url":"https://api.github.com/users/Naros/orgs","repos_url":"https://api.github.com/users/Naros/repos","events_url":"https://api.github.com/users/Naros/events{/privacy}","received_events_url":"https://api.github.com/users/Naros/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558/commits","review_comments_url":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558/comments","review_comment_url":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hibernate/hibernate-orm/issues/2558/comments","statuses_url":"https://api.github.com/repos/hibernate/hibernate-orm/statuses/c38097dadc7af302b2868c74c6c4edac536c15ef","head":{"label":"sebersole:HHH-12713","ref":"HHH-12713","sha":"c38097dadc7af302b2868c74c6c4edac536c15ef","user":{"login":"sebersole","id":234515,"node_id":"MDQ6VXNlcjIzNDUxNQ==","avatar_url":"https://avatars3.githubusercontent.com/u/234515?v=4","gravatar_id":"","url":"https://api.github.com/users/sebersole","html_url":"https://github.com/sebersole","followers_url":"https://api.github.com/users/sebersole/followers","following_url":"https://api.github.com/users/sebersole/following{/other_user}","gists_url":"https://api.github.com/users/sebersole/gists{/gist_id}","starred_url":"https://api.github.com/users/sebersole/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebersole/subscriptions","organizations_url":"https://api.github.com/users/sebersole/orgs","repos_url":"https://api.github.com/users/sebersole/repos","events_url":"https://api.github.com/users/sebersole/events{/privacy}","received_events_url":"https://api.github.com/users/sebersole/received_events","type":"User","site_admin":false},"repo":{"id":1022843,"node_id":"MDEwOlJlcG9zaXRvcnkxMDIyODQz","name":"hibernate-core","full_name":"sebersole/hibernate-core","private":false,"owner":{"login":"sebersole","id":234515,"node_id":"MDQ6VXNlcjIzNDUxNQ==","avatar_url":"https://avatars3.githubusercontent.com/u/234515?v=4","gravatar_id":"","url":"https://api.github.com/users/sebersole","html_url":"https://github.com/sebersole","followers_url":"https://api.github.com/users/sebersole/followers","following_url":"https://api.github.com/users/sebersole/following{/other_user}","gists_url":"https://api.github.com/users/sebersole/gists{/gist_id}","starred_url":"https://api.github.com/users/sebersole/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebersole/subscriptions","organizations_url":"https://api.github.com/users/sebersole/orgs","repos_url":"https://api.github.com/users/sebersole/repos","events_url":"https://api.github.com/users/sebersole/events{/privacy}","received_events_url":"https://api.github.com/users/sebersole/received_events","type":"User","site_admin":false},"html_url":"https://github.com/sebersole/hibernate-core","description":"Hibernate Core: Object Relational Mapper (ORM). Source code starting from 3.6 and upwards","fork":true,"url":"https://api.github.com/repos/sebersole/hibernate-core","forks_url":"https://api.github.com/repos/sebersole/hibernate-core/forks","keys_url":"https://api.github.com/repos/sebersole/hibernate-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sebersole/hibernate-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sebersole/hibernate-core/teams","hooks_url":"https://api.github.com/repos/sebersole/hibernate-core/hooks","issue_events_url":"https://api.github.com/repos/sebersole/hibernate-core/issues/events{/number}","events_url":"https://api.github.com/repos/sebersole/hibernate-core/events","assignees_url":"https://api.github.com/repos/sebersole/hibernate-core/assignees{/user}","branches_url":"https://api.github.com/repos/sebersole/hibernate-core/branches{/branch}","tags_url":"https://api.github.com/repos/sebersole/hibernate-core/tags","blobs_url":"https://api.github.com/repos/sebersole/hibernate-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sebersole/hibernate-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sebersole/hibernate-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/sebersole/hibernate-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sebersole/hibernate-core/statuses/{sha}","languages_url":"https://api.github.com/repos/sebersole/hibernate-core/languages","stargazers_url":"https://api.github.com/repos/sebersole/hibernate-core/stargazers","contributors_url":"https://api.github.com/repos/sebersole/hibernate-core/contributors","subscribers_url":"https://api.github.com/repos/sebersole/hibernate-core/subscribers","subscription_url":"https://api.github.com/repos/sebersole/hibernate-core/subscription","commits_url":"https://api.github.com/repos/sebersole/hibernate-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/sebersole/hibernate-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/sebersole/hibernate-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/sebersole/hibernate-core/issues/comments{/number}","contents_url":"https://api.github.com/repos/sebersole/hibernate-core/contents/{+path}","compare_url":"https://api.github.com/repos/sebersole/hibernate-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sebersole/hibernate-core/merges","archive_url":"https://api.github.com/repos/sebersole/hibernate-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sebersole/hibernate-core/downloads","issues_url":"https://api.github.com/repos/sebersole/hibernate-core/issues{/number}","pulls_url":"https://api.github.com/repos/sebersole/hibernate-core/pulls{/number}","milestones_url":"https://api.github.com/repos/sebersole/hibernate-core/milestones{/number}","notifications_url":"https://api.github.com/repos/sebersole/hibernate-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sebersole/hibernate-core/labels{/name}","releases_url":"https://api.github.com/repos/sebersole/hibernate-core/releases{/id}","deployments_url":"https://api.github.com/repos/sebersole/hibernate-core/deployments","created_at":"2010-10-25T16:37:17Z","updated_at":"2018-08-13T12:55:35Z","pushed_at":"2018-10-04T05:15:03Z","git_url":"git://github.com/sebersole/hibernate-core.git","ssh_url":"git@github.com:sebersole/hibernate-core.git","clone_url":"https://github.com/sebersole/hibernate-core.git","svn_url":"https://github.com/sebersole/hibernate-core","homepage":"http://hibernate.org","size":125385,"stargazers_count":4,"watchers_count":4,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"archived":false,"open_issues_count":2,"license":null,"forks":2,"open_issues":2,"watchers":4,"default_branch":"wip/6.0"}},"base":{"label":"hibernate:master","ref":"master","sha":"fcb65c075e59183ba70f7665a178c4c0d4c39dc5","user":{"login":"hibernate","id":348262,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM0ODI2Mg==","avatar_url":"https://avatars1.githubusercontent.com/u/348262?v=4","gravatar_id":"","url":"https://api.github.com/users/hibernate","html_url":"https://github.com/hibernate","followers_url":"https://api.github.com/users/hibernate/followers","following_url":"https://api.github.com/users/hibernate/following{/other_user}","gists_url":"https://api.github.com/users/hibernate/gists{/gist_id}","starred_url":"https://api.github.com/users/hibernate/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hibernate/subscriptions","organizations_url":"https://api.github.com/users/hibernate/orgs","repos_url":"https://api.github.com/users/hibernate/repos","events_url":"https://api.github.com/users/hibernate/events{/privacy}","received_events_url":"https://api.github.com/users/hibernate/received_events","type":"Organization","site_admin":false},"repo":{"id":961036,"node_id":"MDEwOlJlcG9zaXRvcnk5NjEwMzY=","name":"hibernate-orm","full_name":"hibernate/hibernate-orm","private":false,"owner":{"login":"hibernate","id":348262,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM0ODI2Mg==","avatar_url":"https://avatars1.githubusercontent.com/u/348262?v=4","gravatar_id":"","url":"https://api.github.com/users/hibernate","html_url":"https://github.com/hibernate","followers_url":"https://api.github.com/users/hibernate/followers","following_url":"https://api.github.com/users/hibernate/following{/other_user}","gists_url":"https://api.github.com/users/hibernate/gists{/gist_id}","starred_url":"https://api.github.com/users/hibernate/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hibernate/subscriptions","organizations_url":"https://api.github.com/users/hibernate/orgs","repos_url":"https://api.github.com/users/hibernate/repos","events_url":"https://api.github.com/users/hibernate/events{/privacy}","received_events_url":"https://api.github.com/users/hibernate/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hibernate/hibernate-orm","description":"Hibernate's core Object/Relational Mapping functionality","fork":false,"url":"https://api.github.com/repos/hibernate/hibernate-orm","forks_url":"https://api.github.com/repos/hibernate/hibernate-orm/forks","keys_url":"https://api.github.com/repos/hibernate/hibernate-orm/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hibernate/hibernate-orm/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hibernate/hibernate-orm/teams","hooks_url":"https://api.github.com/repos/hibernate/hibernate-orm/hooks","issue_events_url":"https://api.github.com/repos/hibernate/hibernate-orm/issues/events{/number}","events_url":"https://api.github.com/repos/hibernate/hibernate-orm/events","assignees_url":"https://api.github.com/repos/hibernate/hibernate-orm/assignees{/user}","branches_url":"https://api.github.com/repos/hibernate/hibernate-orm/branches{/branch}","tags_url":"https://api.github.com/repos/hibernate/hibernate-orm/tags","blobs_url":"https://api.github.com/repos/hibernate/hibernate-orm/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hibernate/hibernate-orm/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hibernate/hibernate-orm/git/refs{/sha}","trees_url":"https://api.github.com/repos/hibernate/hibernate-orm/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hibernate/hibernate-orm/statuses/{sha}","languages_url":"https://api.github.com/repos/hibernate/hibernate-orm/languages","stargazers_url":"https://api.github.com/repos/hibernate/hibernate-orm/stargazers","contributors_url":"https://api.github.com/repos/hibernate/hibernate-orm/contributors","subscribers_url":"https://api.github.com/repos/hibernate/hibernate-orm/subscribers","subscription_url":"https://api.github.com/repos/hibernate/hibernate-orm/subscription","commits_url":"https://api.github.com/repos/hibernate/hibernate-orm/commits{/sha}","git_commits_url":"https://api.github.com/repos/hibernate/hibernate-orm/git/commits{/sha}","comments_url":"https://api.github.com/repos/hibernate/hibernate-orm/comments{/number}","issue_comment_url":"https://api.github.com/repos/hibernate/hibernate-orm/issues/comments{/number}","contents_url":"https://api.github.com/repos/hibernate/hibernate-orm/contents/{+path}","compare_url":"https://api.github.com/repos/hibernate/hibernate-orm/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hibernate/hibernate-orm/merges","archive_url":"https://api.github.com/repos/hibernate/hibernate-orm/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hibernate/hibernate-orm/downloads","issues_url":"https://api.github.com/repos/hibernate/hibernate-orm/issues{/number}","pulls_url":"https://api.github.com/repos/hibernate/hibernate-orm/pulls{/number}","milestones_url":"https://api.github.com/repos/hibernate/hibernate-orm/milestones{/number}","notifications_url":"https://api.github.com/repos/hibernate/hibernate-orm/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hibernate/hibernate-orm/labels{/name}","releases_url":"https://api.github.com/repos/hibernate/hibernate-orm/releases{/id}","deployments_url":"https://api.github.com/repos/hibernate/hibernate-orm/deployments","created_at":"2010-10-04T16:15:52Z","updated_at":"2018-10-03T08:58:52Z","pushed_at":"2018-10-04T09:00:49Z","git_url":"git://github.com/hibernate/hibernate-orm.git","ssh_url":"git@github.com:hibernate/hibernate-orm.git","clone_url":"https://github.com/hibernate/hibernate-orm.git","svn_url":"https://github.com/hibernate/hibernate-orm","homepage":"http://hibernate.org","size":160246,"stargazers_count":3398,"watchers_count":3398,"language":"Java","has_issues":false,"has_projects":false,"has_downloads":false,"has_wiki":true,"has_pages":false,"forks_count":2325,"mirror_url":null,"archived":false,"open_issues_count":113,"license":null,"forks":2325,"open_issues":113,"watchers":3398,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558"},"html":{"href":"https://github.com/hibernate/hibernate-orm/pull/2558"},"issue":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/issues/2558"},"comments":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/issues/2558/comments"},"review_comments":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558/comments"},"review_comment":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/pulls/2558/commits"},"statuses":{"href":"https://api.github.com/repos/hibernate/hibernate-orm/statuses/c38097dadc7af302b2868c74c6c4edac536c15ef"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"aleksandarsusnjar"}}