{"action":"created","issue":{"url":"https://api.github.com/repos/benas/jPopulator/issues/25","labels_url":"https://api.github.com/repos/benas/jPopulator/issues/25/labels{/name}","comments_url":"https://api.github.com/repos/benas/jPopulator/issues/25/comments","events_url":"https://api.github.com/repos/benas/jPopulator/issues/25/events","html_url":"https://github.com/benas/jPopulator/pull/25","id":96643116,"number":25,"title":"initialization of immutable objects","user":{"login":"frankowskid","id":1147654,"avatar_url":"https://avatars.githubusercontent.com/u/1147654?v=3","gravatar_id":"","url":"https://api.github.com/users/frankowskid","html_url":"https://github.com/frankowskid","followers_url":"https://api.github.com/users/frankowskid/followers","following_url":"https://api.github.com/users/frankowskid/following{/other_user}","gists_url":"https://api.github.com/users/frankowskid/gists{/gist_id}","starred_url":"https://api.github.com/users/frankowskid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frankowskid/subscriptions","organizations_url":"https://api.github.com/users/frankowskid/orgs","repos_url":"https://api.github.com/users/frankowskid/repos","events_url":"https://api.github.com/users/frankowskid/events{/privacy}","received_events_url":"https://api.github.com/users/frankowskid/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-07-22T19:15:18Z","updated_at":"2015-08-02T19:35:21Z","closed_at":"2015-08-02T19:02:08Z","pull_request":{"url":"https://api.github.com/repos/benas/jPopulator/pulls/25","html_url":"https://github.com/benas/jPopulator/pull/25","diff_url":"https://github.com/benas/jPopulator/pull/25.diff","patch_url":"https://github.com/benas/jPopulator/pull/25.patch"},"body":"1. Currently it is not possible to create objects if default constructor does not exist or is not public.\r\nSituation where default constructor does not exist is common when implementing immutable classes.\r\n\r\n2. When we have immutable object, there is no settes for object. This also cause that we are unable to create object(PropertyUtils throws exceptions as it uses setters)\r\n\r\n\r\nTo solve#1 - I'm using Objenesis which is able to create object even if public constructor is not available\r\n\r\nTo solve#1 - I'm using reflection, but befoer doing it I'm ensuring that field is accessible (public). After setting I'm restoring previous state"},"comment":{"url":"https://api.github.com/repos/benas/jPopulator/issues/comments/127059862","html_url":"https://github.com/benas/jPopulator/pull/25#issuecomment-127059862","issue_url":"https://api.github.com/repos/benas/jPopulator/issues/25","id":127059862,"user":{"login":"buildhive","id":1584733,"avatar_url":"https://avatars.githubusercontent.com/u/1584733?v=3","gravatar_id":"","url":"https://api.github.com/users/buildhive","html_url":"https://github.com/buildhive","followers_url":"https://api.github.com/users/buildhive/followers","following_url":"https://api.github.com/users/buildhive/following{/other_user}","gists_url":"https://api.github.com/users/buildhive/gists{/gist_id}","starred_url":"https://api.github.com/users/buildhive/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/buildhive/subscriptions","organizations_url":"https://api.github.com/users/buildhive/orgs","repos_url":"https://api.github.com/users/buildhive/repos","events_url":"https://api.github.com/users/buildhive/events{/privacy}","received_events_url":"https://api.github.com/users/buildhive/received_events","type":"User","site_admin":false},"created_at":"2015-08-02T19:35:21Z","updated_at":"2015-08-02T19:35:21Z","body":"[Mahmoud Ben Hassine » jPopulator #101](https://buildhive.cloudbees.com/job/benas/job/jPopulator/101/) SUCCESS\nThis pull request looks good\n[(what's this?)](https://www.cloudbees.com/what-is-buildhive)"}}