{"action":"closed","number":169,"pull_request":{"url":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/169","id":68858177,"html_url":"https://github.com/leekelleher/umbraco-ditto/pull/169","diff_url":"https://github.com/leekelleher/umbraco-ditto/pull/169.diff","patch_url":"https://github.com/leekelleher/umbraco-ditto/pull/169.patch","issue_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/169","number":169,"state":"closed","locked":false,"title":"DittoFactoryAttribute","user":{"login":"mattbrailsford","id":527305,"avatar_url":"https://avatars.githubusercontent.com/u/527305?v=3","gravatar_id":"","url":"https://api.github.com/users/mattbrailsford","html_url":"https://github.com/mattbrailsford","followers_url":"https://api.github.com/users/mattbrailsford/followers","following_url":"https://api.github.com/users/mattbrailsford/following{/other_user}","gists_url":"https://api.github.com/users/mattbrailsford/gists{/gist_id}","starred_url":"https://api.github.com/users/mattbrailsford/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattbrailsford/subscriptions","organizations_url":"https://api.github.com/users/mattbrailsford/orgs","repos_url":"https://api.github.com/users/mattbrailsford/repos","events_url":"https://api.github.com/users/mattbrailsford/events{/privacy}","received_events_url":"https://api.github.com/users/mattbrailsford/received_events","type":"User","site_admin":false},"body":"Created a DittoFactory processor attribute to allow the dynamic typing of items based upon properties of that item, such as Nested Content items which support a base interface, but may have differing concentrate models named after their DocType alias.\r\n\r\nI think more unit tests are needed, and I'm not 100% certain in my head if this is entirely needed, but I put together a POC anyway.\r\n\r\nThis would be a fix for issue #168 if it was merged in.","created_at":"2016-05-04T13:03:42Z","updated_at":"2016-05-06T06:35:09Z","closed_at":"2016-05-06T06:35:09Z","merged_at":"2016-05-06T06:35:09Z","merge_commit_sha":"1385574ca5d2883487c0a77703836c4e45e51373","assignee":null,"milestone":{"url":"https://api.github.com/repos/leekelleher/umbraco-ditto/milestones/11","html_url":"https://github.com/leekelleher/umbraco-ditto/milestones/0.10.0","labels_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/milestones/11/labels","id":1713920,"number":11,"title":"0.10.0","description":"Introduces the DitFlo feature","creator":{"login":"mattbrailsford","id":527305,"avatar_url":"https://avatars.githubusercontent.com/u/527305?v=3","gravatar_id":"","url":"https://api.github.com/users/mattbrailsford","html_url":"https://github.com/mattbrailsford","followers_url":"https://api.github.com/users/mattbrailsford/followers","following_url":"https://api.github.com/users/mattbrailsford/following{/other_user}","gists_url":"https://api.github.com/users/mattbrailsford/gists{/gist_id}","starred_url":"https://api.github.com/users/mattbrailsford/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattbrailsford/subscriptions","organizations_url":"https://api.github.com/users/mattbrailsford/orgs","repos_url":"https://api.github.com/users/mattbrailsford/repos","events_url":"https://api.github.com/users/mattbrailsford/events{/privacy}","received_events_url":"https://api.github.com/users/mattbrailsford/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":2,"state":"open","created_at":"2016-04-18T14:34:15Z","updated_at":"2016-05-06T06:35:09Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/169/commits","review_comments_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/169/comments","review_comment_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/comments{/number}","comments_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/169/comments","statuses_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/statuses/6db2bc944d2adaa4db85cb3ab3da7a3faebe1855","head":{"label":"leekelleher:feature/ditto-factory","ref":"feature/ditto-factory","sha":"6db2bc944d2adaa4db85cb3ab3da7a3faebe1855","user":{"login":"leekelleher","id":209066,"avatar_url":"https://avatars.githubusercontent.com/u/209066?v=3","gravatar_id":"","url":"https://api.github.com/users/leekelleher","html_url":"https://github.com/leekelleher","followers_url":"https://api.github.com/users/leekelleher/followers","following_url":"https://api.github.com/users/leekelleher/following{/other_user}","gists_url":"https://api.github.com/users/leekelleher/gists{/gist_id}","starred_url":"https://api.github.com/users/leekelleher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leekelleher/subscriptions","organizations_url":"https://api.github.com/users/leekelleher/orgs","repos_url":"https://api.github.com/users/leekelleher/repos","events_url":"https://api.github.com/users/leekelleher/events{/privacy}","received_events_url":"https://api.github.com/users/leekelleher/received_events","type":"User","site_admin":false},"repo":{"id":18762346,"name":"umbraco-ditto","full_name":"leekelleher/umbraco-ditto","owner":{"login":"leekelleher","id":209066,"avatar_url":"https://avatars.githubusercontent.com/u/209066?v=3","gravatar_id":"","url":"https://api.github.com/users/leekelleher","html_url":"https://github.com/leekelleher","followers_url":"https://api.github.com/users/leekelleher/followers","following_url":"https://api.github.com/users/leekelleher/following{/other_user}","gists_url":"https://api.github.com/users/leekelleher/gists{/gist_id}","starred_url":"https://api.github.com/users/leekelleher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leekelleher/subscriptions","organizations_url":"https://api.github.com/users/leekelleher/orgs","repos_url":"https://api.github.com/users/leekelleher/repos","events_url":"https://api.github.com/users/leekelleher/events{/privacy}","received_events_url":"https://api.github.com/users/leekelleher/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/leekelleher/umbraco-ditto","description":"Ditto - the friendly view-model mapper for Umbraco","fork":false,"url":"https://api.github.com/repos/leekelleher/umbraco-ditto","forks_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/forks","keys_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/keys{/key_id}","collaborators_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/teams","hooks_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/hooks","issue_events_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/events{/number}","events_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/events","assignees_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/assignees{/user}","branches_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/branches{/branch}","tags_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/tags","blobs_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/refs{/sha}","trees_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/trees{/sha}","statuses_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/statuses/{sha}","languages_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/languages","stargazers_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/stargazers","contributors_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/contributors","subscribers_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/subscribers","subscription_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/subscription","commits_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/commits{/sha}","git_commits_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/commits{/sha}","comments_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/comments{/number}","issue_comment_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/comments{/number}","contents_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/contents/{+path}","compare_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/compare/{base}...{head}","merges_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/merges","archive_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/downloads","issues_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues{/number}","pulls_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls{/number}","milestones_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/milestones{/number}","notifications_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/labels{/name}","releases_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/releases{/id}","deployments_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/deployments","created_at":"2014-04-14T13:52:54Z","updated_at":"2016-05-03T07:30:32Z","pushed_at":"2016-05-06T06:35:09Z","git_url":"git://github.com/leekelleher/umbraco-ditto.git","ssh_url":"git@github.com:leekelleher/umbraco-ditto.git","clone_url":"https://github.com/leekelleher/umbraco-ditto.git","svn_url":"https://github.com/leekelleher/umbraco-ditto","homepage":"http://our.umbraco.org/projects/developer-tools/ditto","size":9028,"stargazers_count":55,"watchers_count":55,"language":"C#","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":26,"mirror_url":null,"open_issues_count":2,"forks":26,"open_issues":2,"watchers":55,"default_branch":"develop"}},"base":{"label":"leekelleher:develop","ref":"develop","sha":"03aa615cfc14c432e134d58ea3a54d13a6b441f6","user":{"login":"leekelleher","id":209066,"avatar_url":"https://avatars.githubusercontent.com/u/209066?v=3","gravatar_id":"","url":"https://api.github.com/users/leekelleher","html_url":"https://github.com/leekelleher","followers_url":"https://api.github.com/users/leekelleher/followers","following_url":"https://api.github.com/users/leekelleher/following{/other_user}","gists_url":"https://api.github.com/users/leekelleher/gists{/gist_id}","starred_url":"https://api.github.com/users/leekelleher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leekelleher/subscriptions","organizations_url":"https://api.github.com/users/leekelleher/orgs","repos_url":"https://api.github.com/users/leekelleher/repos","events_url":"https://api.github.com/users/leekelleher/events{/privacy}","received_events_url":"https://api.github.com/users/leekelleher/received_events","type":"User","site_admin":false},"repo":{"id":18762346,"name":"umbraco-ditto","full_name":"leekelleher/umbraco-ditto","owner":{"login":"leekelleher","id":209066,"avatar_url":"https://avatars.githubusercontent.com/u/209066?v=3","gravatar_id":"","url":"https://api.github.com/users/leekelleher","html_url":"https://github.com/leekelleher","followers_url":"https://api.github.com/users/leekelleher/followers","following_url":"https://api.github.com/users/leekelleher/following{/other_user}","gists_url":"https://api.github.com/users/leekelleher/gists{/gist_id}","starred_url":"https://api.github.com/users/leekelleher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leekelleher/subscriptions","organizations_url":"https://api.github.com/users/leekelleher/orgs","repos_url":"https://api.github.com/users/leekelleher/repos","events_url":"https://api.github.com/users/leekelleher/events{/privacy}","received_events_url":"https://api.github.com/users/leekelleher/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/leekelleher/umbraco-ditto","description":"Ditto - the friendly view-model mapper for Umbraco","fork":false,"url":"https://api.github.com/repos/leekelleher/umbraco-ditto","forks_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/forks","keys_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/keys{/key_id}","collaborators_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/teams","hooks_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/hooks","issue_events_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/events{/number}","events_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/events","assignees_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/assignees{/user}","branches_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/branches{/branch}","tags_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/tags","blobs_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/refs{/sha}","trees_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/trees{/sha}","statuses_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/statuses/{sha}","languages_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/languages","stargazers_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/stargazers","contributors_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/contributors","subscribers_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/subscribers","subscription_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/subscription","commits_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/commits{/sha}","git_commits_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/git/commits{/sha}","comments_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/comments{/number}","issue_comment_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/comments{/number}","contents_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/contents/{+path}","compare_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/compare/{base}...{head}","merges_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/merges","archive_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/downloads","issues_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues{/number}","pulls_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls{/number}","milestones_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/milestones{/number}","notifications_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/labels{/name}","releases_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/releases{/id}","deployments_url":"https://api.github.com/repos/leekelleher/umbraco-ditto/deployments","created_at":"2014-04-14T13:52:54Z","updated_at":"2016-05-03T07:30:32Z","pushed_at":"2016-05-06T06:35:09Z","git_url":"git://github.com/leekelleher/umbraco-ditto.git","ssh_url":"git@github.com:leekelleher/umbraco-ditto.git","clone_url":"https://github.com/leekelleher/umbraco-ditto.git","svn_url":"https://github.com/leekelleher/umbraco-ditto","homepage":"http://our.umbraco.org/projects/developer-tools/ditto","size":9028,"stargazers_count":55,"watchers_count":55,"language":"C#","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":26,"mirror_url":null,"open_issues_count":2,"forks":26,"open_issues":2,"watchers":55,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/169"},"html":{"href":"https://github.com/leekelleher/umbraco-ditto/pull/169"},"issue":{"href":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/169"},"comments":{"href":"https://api.github.com/repos/leekelleher/umbraco-ditto/issues/169/comments"},"review_comments":{"href":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/169/comments"},"review_comment":{"href":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/leekelleher/umbraco-ditto/pulls/169/commits"},"statuses":{"href":"https://api.github.com/repos/leekelleher/umbraco-ditto/statuses/6db2bc944d2adaa4db85cb3ab3da7a3faebe1855"}},"merged":true,"mergeable":null,"mergeable_state":"unknown","merged_by":{"login":"leekelleher","id":209066,"avatar_url":"https://avatars.githubusercontent.com/u/209066?v=3","gravatar_id":"","url":"https://api.github.com/users/leekelleher","html_url":"https://github.com/leekelleher","followers_url":"https://api.github.com/users/leekelleher/followers","following_url":"https://api.github.com/users/leekelleher/following{/other_user}","gists_url":"https://api.github.com/users/leekelleher/gists{/gist_id}","starred_url":"https://api.github.com/users/leekelleher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leekelleher/subscriptions","organizations_url":"https://api.github.com/users/leekelleher/orgs","repos_url":"https://api.github.com/users/leekelleher/repos","events_url":"https://api.github.com/users/leekelleher/events{/privacy}","received_events_url":"https://api.github.com/users/leekelleher/received_events","type":"User","site_admin":false},"comments":9,"review_comments":5,"commits":8,"additions":198,"deletions":0,"changed_files":6}}