{"action":"created","comment":{"url":"https://api.github.com/repos/cdi-spec/cdi/pulls/comments/57319687","id":57319687,"diff_hunk":"@@ -0,0 +1,432 @@\n+/*\n+ * JBoss, Home of Professional Open Source\n+ * Copyright 2016, Red Hat, Inc., and individual contributors\n+ * by the @authors tag. See the copyright.txt in the distribution for a\n+ * full listing of individual contributors.\n+ *\n+ * Licensed under the Apache License, Version 2.0 (the \"License\");\n+ * you may not use this file except in compliance with the License.\n+ * You may obtain a copy of the License at\n+ * http://www.apache.org/licenses/LICENSE-2.0\n+ * Unless required by applicable law or agreed to in writing, software\n+ * distributed under the License is distributed on an \"AS IS\" BASIS,\n+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n+ * See the License for the specific language governing permissions and\n+ * limitations under the License.\n+ */\n+\n+package javax.enterprise.inject.spi.builder;\n+\n+import javax.enterprise.inject.spi.AnnotatedConstructor;\n+import javax.enterprise.inject.spi.AnnotatedField;\n+import javax.enterprise.inject.spi.AnnotatedMethod;\n+import javax.enterprise.inject.spi.AnnotatedParameter;\n+import javax.enterprise.inject.spi.AnnotatedType;\n+import javax.enterprise.inject.spi.ProcessAnnotatedType;\n+import java.lang.annotation.Annotation;\n+import java.lang.reflect.Constructor;\n+import java.lang.reflect.Field;\n+import java.lang.reflect.Method;\n+import java.lang.reflect.Type;\n+\n+\n+/**\n+ * This API is an helper to configure a new {@link AnnotatedType} instance.\n+ * The CDI container must provides an implementation of this interface.\n+ *\n+ * AnnotatedTypeConfigurator is not reusable.\n+ *\n+ * This configurator is not thread safe and shall not be used concurrently.\n+ *\n+ * @see javax.enterprise.inject.spi.BeforeBeanDiscovery#addAnnotatedType(String)\n+ * @see javax.enterprise.inject.spi.AfterTypeDiscovery#addAnnotatedType(String)\n+ * @see ProcessAnnotatedType#configureAnnotatedType()\n+ * @param <T> the class represented by the configured AnnotatedType\n+ * @author Antoine Sabot-Durand\n+ * @since 2.0\n+ */\n+public interface AnnotatedTypeConfigurator<T> {\n+\n+    /**\n+     * Add an annotation to the type declaration.\n+     *\n+     * @param annotation the annotation instance to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToType(Annotation annotation);\n+\n+    /**\n+     * Remove an annotation class from the type\n+     *\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromType(Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Remove an annotation instance from the type\n+     *\n+     * @param annotation the annotation to remove\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromType(Annotation annotation);\n+\n+    /**\n+     * Add an annotation to the specified field. If the field is not already\n+     * present, it will be added.\n+     *\n+     * @param field      the field to add the annotation to\n+     * @param annotation the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToField(Field field, Annotation annotation);\n+\n+    /**\n+     * Add an annotation to the specified field. If the field is not already\n+     * present, it will be added.\n+     *\n+     * @param field      the field to add the annotation to\n+     * @param annotation the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToField(AnnotatedField<? super T> field, Annotation annotation);\n+\n+    /**\n+     * Remove an annotation from the specified field.\n+     *\n+     * @param field          the field to remove the annotation from\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null or if the\n+     *                                  field is not currently declared on the type\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromField(Field field, Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Remove an annotation from the specified field.\n+     *\n+     * @param field          the field to remove the annotation from\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null or if the\n+     *                                  field is not currently declared on the type\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromField(AnnotatedField<? super T> field,\n+                                                 Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Add an annotation to the specified method. If the method is not already\n+     * present, it will be added.\n+     *\n+     * @param method     the method to add the annotation to\n+     * @param annotation the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToMethod(Method method, Annotation annotation);\n+\n+    /**\n+     * Add an annotation to the specified method. If the method is not already\n+     * present, it will be added.\n+     *\n+     * @param method     the method to add the annotation to\n+     * @param annotation the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToMethod(AnnotatedMethod<? super T> method, Annotation annotation);\n+\n+    /**\n+     * Remove an annotation from the specified method.\n+     *\n+     * @param method         the method to remove the annotation from\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null or if the\n+     *                                  method is not currently declared on the type\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromMethod(Method method, Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Remove an annotation from the specified method.\n+     *\n+     * @param method         the method to remove the annotation from\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null or if the\n+     *                                  method is not currently declared on the type\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromMethod(AnnotatedMethod<? super T> method,\n+                                                  Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Add an annotation to the specified method parameter. If the method is not\n+     * already present, it will be added. If the method parameter is not already\n+     * present, it will be added.\n+     *\n+     * @param method     the method to add the annotation to\n+     * @param position   the position of the parameter to add\n+     * @param annotation the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToMethodParameter(Method method, int position, Annotation annotation);\n+\n+    /**\n+     * Remove an annotation from the specified method parameter.\n+     *\n+     * @param method         the method to remove the annotation from\n+     * @param position       the position of the parameter to remove\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null, if the\n+     *                                  method is not currently declared on the type or if the\n+     *                                  parameter is not declared on the method\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromMethodParameter(Method method,\n+                                                           int position, Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Add an annotation to the specified constructor. If the constructor is not\n+     * already present, it will be added.\n+     *\n+     * @param constructor the constructor to add the annotation to\n+     * @param annotation  the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToConstructor(Constructor<T> constructor, Annotation annotation);\n+\n+    /**\n+     * Add an annotation to the specified constructor. If the constructor is not\n+     * already present, it will be added.\n+     *\n+     * @param constructor the constructor to add the annotation to\n+     * @param annotation  the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToConstructor(AnnotatedConstructor<T> constructor, Annotation annotation);\n+\n+    /**\n+     * Remove an annotation from the specified constructor.\n+     *\n+     * @param constructor    the constructor to add the annotation to\n+     * @param annotationType the annotation to add\n+     * @throws IllegalArgumentException if the annotationType is null or if the\n+     *                                  constructor is not currently declared on the type\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromConstructor(Constructor<T> constructor,\n+                                                       Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Remove an annotation from the specified constructor.\n+     *\n+     * @param constructor    the constructor to add the annotation to\n+     * @param annotationType the annotation to add\n+     * @throws IllegalArgumentException if the annotationType is null, if the\n+     *                                  annotation does not exist on the type or if the constructor is\n+     *                                  not currently declared on the type\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromConstructor(AnnotatedConstructor<T> constructor,\n+                                                       Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Add an annotation to the specified constructor parameter. If the\n+     * constructor is not already present, it will be added. If the constructor\n+     * parameter is not already present, it will be added.\n+     *\n+     * @param constructor the constructor to add the annotation to\n+     * @param position    the position of the parameter to add\n+     * @param annotation  the annotation to add\n+     * @throws IllegalArgumentException if the annotation is null\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> addToConstructorParameter(Constructor<T> constructor,\n+                                                           int position,\n+                                                           Annotation annotation);\n+\n+    /**\n+     * Remove an annotation from the specified constructor parameter.\n+     *\n+     * @param constructor    the constructor to remove the annotation from\n+     * @param position       the position of the parameter to remove\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null, if the\n+     *                                  constructor is not currently declared on the type or if the\n+     *                                  parameter is not declared on the constructor\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromConstructorParameter(Constructor<T> constructor,\n+                                                                int position,\n+                                                                Class<? extends Annotation> annotationType);\n+\n+    /**\n+     * Remove an annotation from the specified parameter.\n+     *\n+     * @param parameter      the parameter to remove the annotation from\n+     * @param annotationType the annotation type to remove\n+     * @throws IllegalArgumentException if the annotationType is null, if the\n+     *                                  callable which declares the parameter is not currently declared\n+     *                                  on the type or if the parameter is not declared on either a\n+     *                                  constructor or a method\n+     * @return self\n+     */\n+    AnnotatedTypeConfigurator<T> removeFromParameter(AnnotatedParameter<? super T> parameter,","path":"api/src/main/java/javax/enterprise/inject/spi/builder/AnnotatedTypeConfigurator.java","position":282,"original_position":282,"commit_id":"f916771afe4a98f0e8aeff2362e7ad8d2f8e9201","original_commit_id":"f916771afe4a98f0e8aeff2362e7ad8d2f8e9201","user":{"login":"antoinesd","id":489817,"avatar_url":"https://avatars.githubusercontent.com/u/489817?v=3","gravatar_id":"","url":"https://api.github.com/users/antoinesd","html_url":"https://github.com/antoinesd","followers_url":"https://api.github.com/users/antoinesd/followers","following_url":"https://api.github.com/users/antoinesd/following{/other_user}","gists_url":"https://api.github.com/users/antoinesd/gists{/gist_id}","starred_url":"https://api.github.com/users/antoinesd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/antoinesd/subscriptions","organizations_url":"https://api.github.com/users/antoinesd/orgs","repos_url":"https://api.github.com/users/antoinesd/repos","events_url":"https://api.github.com/users/antoinesd/events{/privacy}","received_events_url":"https://api.github.com/users/antoinesd/received_events","type":"User","site_admin":false},"body":"It's for both. I add the precision in the javadoc.","created_at":"2016-03-24T13:59:43Z","updated_at":"2016-03-24T13:59:43Z","html_url":"https://github.com/cdi-spec/cdi/pull/270#discussion_r57319687","pull_request_url":"https://api.github.com/repos/cdi-spec/cdi/pulls/270","_links":{"self":{"href":"https://api.github.com/repos/cdi-spec/cdi/pulls/comments/57319687"},"html":{"href":"https://github.com/cdi-spec/cdi/pull/270#discussion_r57319687"},"pull_request":{"href":"https://api.github.com/repos/cdi-spec/cdi/pulls/270"}}},"pull_request":{"url":"https://api.github.com/repos/cdi-spec/cdi/pulls/270","id":55102567,"html_url":"https://github.com/cdi-spec/cdi/pull/270","diff_url":"https://github.com/cdi-spec/cdi/pull/270.diff","patch_url":"https://github.com/cdi-spec/cdi/pull/270.patch","issue_url":"https://api.github.com/repos/cdi-spec/cdi/issues/270","number":270,"state":"open","locked":false,"title":"CDI-558 Standardize the Meta-Data builders API (BeanBuilder, etc...)","user":{"login":"antoinesd","id":489817,"avatar_url":"https://avatars.githubusercontent.com/u/489817?v=3","gravatar_id":"","url":"https://api.github.com/users/antoinesd","html_url":"https://github.com/antoinesd","followers_url":"https://api.github.com/users/antoinesd/followers","following_url":"https://api.github.com/users/antoinesd/following{/other_user}","gists_url":"https://api.github.com/users/antoinesd/gists{/gist_id}","starred_url":"https://api.github.com/users/antoinesd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/antoinesd/subscriptions","organizations_url":"https://api.github.com/users/antoinesd/orgs","repos_url":"https://api.github.com/users/antoinesd/repos","events_url":"https://api.github.com/users/antoinesd/events{/privacy}","received_events_url":"https://api.github.com/users/antoinesd/received_events","type":"User","site_admin":false},"body":"CDI-558 Standardize the Meta-Data builders API (BeanBuilder, etc...)","created_at":"2016-01-05T15:20:34Z","updated_at":"2016-03-24T13:59:44Z","closed_at":null,"merged_at":null,"merge_commit_sha":"abbf897f0f4f84a1cfab305cb5ec63b09a57c9df","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/cdi-spec/cdi/pulls/270/commits","review_comments_url":"https://api.github.com/repos/cdi-spec/cdi/pulls/270/comments","review_comment_url":"https://api.github.com/repos/cdi-spec/cdi/pulls/comments{/number}","comments_url":"https://api.github.com/repos/cdi-spec/cdi/issues/270/comments","statuses_url":"https://api.github.com/repos/cdi-spec/cdi/statuses/f916771afe4a98f0e8aeff2362e7ad8d2f8e9201","head":{"label":"antoinesd:CDI-558","ref":"CDI-558","sha":"f916771afe4a98f0e8aeff2362e7ad8d2f8e9201","user":{"login":"antoinesd","id":489817,"avatar_url":"https://avatars.githubusercontent.com/u/489817?v=3","gravatar_id":"","url":"https://api.github.com/users/antoinesd","html_url":"https://github.com/antoinesd","followers_url":"https://api.github.com/users/antoinesd/followers","following_url":"https://api.github.com/users/antoinesd/following{/other_user}","gists_url":"https://api.github.com/users/antoinesd/gists{/gist_id}","starred_url":"https://api.github.com/users/antoinesd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/antoinesd/subscriptions","organizations_url":"https://api.github.com/users/antoinesd/orgs","repos_url":"https://api.github.com/users/antoinesd/repos","events_url":"https://api.github.com/users/antoinesd/events{/privacy}","received_events_url":"https://api.github.com/users/antoinesd/received_events","type":"User","site_admin":false},"repo":{"id":16379835,"name":"cdi-spec","full_name":"antoinesd/cdi-spec","owner":{"login":"antoinesd","id":489817,"avatar_url":"https://avatars.githubusercontent.com/u/489817?v=3","gravatar_id":"","url":"https://api.github.com/users/antoinesd","html_url":"https://github.com/antoinesd","followers_url":"https://api.github.com/users/antoinesd/followers","following_url":"https://api.github.com/users/antoinesd/following{/other_user}","gists_url":"https://api.github.com/users/antoinesd/gists{/gist_id}","starred_url":"https://api.github.com/users/antoinesd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/antoinesd/subscriptions","organizations_url":"https://api.github.com/users/antoinesd/orgs","repos_url":"https://api.github.com/users/antoinesd/repos","events_url":"https://api.github.com/users/antoinesd/events{/privacy}","received_events_url":"https://api.github.com/users/antoinesd/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/antoinesd/cdi-spec","description":"CDI specification","fork":true,"url":"https://api.github.com/repos/antoinesd/cdi-spec","forks_url":"https://api.github.com/repos/antoinesd/cdi-spec/forks","keys_url":"https://api.github.com/repos/antoinesd/cdi-spec/keys{/key_id}","collaborators_url":"https://api.github.com/repos/antoinesd/cdi-spec/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/antoinesd/cdi-spec/teams","hooks_url":"https://api.github.com/repos/antoinesd/cdi-spec/hooks","issue_events_url":"https://api.github.com/repos/antoinesd/cdi-spec/issues/events{/number}","events_url":"https://api.github.com/repos/antoinesd/cdi-spec/events","assignees_url":"https://api.github.com/repos/antoinesd/cdi-spec/assignees{/user}","branches_url":"https://api.github.com/repos/antoinesd/cdi-spec/branches{/branch}","tags_url":"https://api.github.com/repos/antoinesd/cdi-spec/tags","blobs_url":"https://api.github.com/repos/antoinesd/cdi-spec/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/antoinesd/cdi-spec/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/antoinesd/cdi-spec/git/refs{/sha}","trees_url":"https://api.github.com/repos/antoinesd/cdi-spec/git/trees{/sha}","statuses_url":"https://api.github.com/repos/antoinesd/cdi-spec/statuses/{sha}","languages_url":"https://api.github.com/repos/antoinesd/cdi-spec/languages","stargazers_url":"https://api.github.com/repos/antoinesd/cdi-spec/stargazers","contributors_url":"https://api.github.com/repos/antoinesd/cdi-spec/contributors","subscribers_url":"https://api.github.com/repos/antoinesd/cdi-spec/subscribers","subscription_url":"https://api.github.com/repos/antoinesd/cdi-spec/subscription","commits_url":"https://api.github.com/repos/antoinesd/cdi-spec/commits{/sha}","git_commits_url":"https://api.github.com/repos/antoinesd/cdi-spec/git/commits{/sha}","comments_url":"https://api.github.com/repos/antoinesd/cdi-spec/comments{/number}","issue_comment_url":"https://api.github.com/repos/antoinesd/cdi-spec/issues/comments{/number}","contents_url":"https://api.github.com/repos/antoinesd/cdi-spec/contents/{+path}","compare_url":"https://api.github.com/repos/antoinesd/cdi-spec/compare/{base}...{head}","merges_url":"https://api.github.com/repos/antoinesd/cdi-spec/merges","archive_url":"https://api.github.com/repos/antoinesd/cdi-spec/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/antoinesd/cdi-spec/downloads","issues_url":"https://api.github.com/repos/antoinesd/cdi-spec/issues{/number}","pulls_url":"https://api.github.com/repos/antoinesd/cdi-spec/pulls{/number}","milestones_url":"https://api.github.com/repos/antoinesd/cdi-spec/milestones{/number}","notifications_url":"https://api.github.com/repos/antoinesd/cdi-spec/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/antoinesd/cdi-spec/labels{/name}","releases_url":"https://api.github.com/repos/antoinesd/cdi-spec/releases{/id}","deployments_url":"https://api.github.com/repos/antoinesd/cdi-spec/deployments","created_at":"2014-01-30T14:43:02Z","updated_at":"2015-04-30T15:02:23Z","pushed_at":"2016-03-22T10:20:37Z","git_url":"git://github.com/antoinesd/cdi-spec.git","ssh_url":"git@github.com:antoinesd/cdi-spec.git","clone_url":"https://github.com/antoinesd/cdi-spec.git","svn_url":"https://github.com/antoinesd/cdi-spec","homepage":"","size":7531,"stargazers_count":1,"watchers_count":1,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":1,"forks":1,"open_issues":1,"watchers":1,"default_branch":"master"}},"base":{"label":"cdi-spec:2.0-EDR2","ref":"2.0-EDR2","sha":"1d464b5ed02cbcdc0a9afec10baf8bc8c19cb7d1","user":{"login":"cdi-spec","id":2632663,"avatar_url":"https://avatars.githubusercontent.com/u/2632663?v=3","gravatar_id":"","url":"https://api.github.com/users/cdi-spec","html_url":"https://github.com/cdi-spec","followers_url":"https://api.github.com/users/cdi-spec/followers","following_url":"https://api.github.com/users/cdi-spec/following{/other_user}","gists_url":"https://api.github.com/users/cdi-spec/gists{/gist_id}","starred_url":"https://api.github.com/users/cdi-spec/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cdi-spec/subscriptions","organizations_url":"https://api.github.com/users/cdi-spec/orgs","repos_url":"https://api.github.com/users/cdi-spec/repos","events_url":"https://api.github.com/users/cdi-spec/events{/privacy}","received_events_url":"https://api.github.com/users/cdi-spec/received_events","type":"Organization","site_admin":false},"repo":{"id":1756541,"name":"cdi","full_name":"cdi-spec/cdi","owner":{"login":"cdi-spec","id":2632663,"avatar_url":"https://avatars.githubusercontent.com/u/2632663?v=3","gravatar_id":"","url":"https://api.github.com/users/cdi-spec","html_url":"https://github.com/cdi-spec","followers_url":"https://api.github.com/users/cdi-spec/followers","following_url":"https://api.github.com/users/cdi-spec/following{/other_user}","gists_url":"https://api.github.com/users/cdi-spec/gists{/gist_id}","starred_url":"https://api.github.com/users/cdi-spec/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cdi-spec/subscriptions","organizations_url":"https://api.github.com/users/cdi-spec/orgs","repos_url":"https://api.github.com/users/cdi-spec/repos","events_url":"https://api.github.com/users/cdi-spec/events{/privacy}","received_events_url":"https://api.github.com/users/cdi-spec/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cdi-spec/cdi","description":"CDI specification","fork":false,"url":"https://api.github.com/repos/cdi-spec/cdi","forks_url":"https://api.github.com/repos/cdi-spec/cdi/forks","keys_url":"https://api.github.com/repos/cdi-spec/cdi/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cdi-spec/cdi/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cdi-spec/cdi/teams","hooks_url":"https://api.github.com/repos/cdi-spec/cdi/hooks","issue_events_url":"https://api.github.com/repos/cdi-spec/cdi/issues/events{/number}","events_url":"https://api.github.com/repos/cdi-spec/cdi/events","assignees_url":"https://api.github.com/repos/cdi-spec/cdi/assignees{/user}","branches_url":"https://api.github.com/repos/cdi-spec/cdi/branches{/branch}","tags_url":"https://api.github.com/repos/cdi-spec/cdi/tags","blobs_url":"https://api.github.com/repos/cdi-spec/cdi/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cdi-spec/cdi/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cdi-spec/cdi/git/refs{/sha}","trees_url":"https://api.github.com/repos/cdi-spec/cdi/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cdi-spec/cdi/statuses/{sha}","languages_url":"https://api.github.com/repos/cdi-spec/cdi/languages","stargazers_url":"https://api.github.com/repos/cdi-spec/cdi/stargazers","contributors_url":"https://api.github.com/repos/cdi-spec/cdi/contributors","subscribers_url":"https://api.github.com/repos/cdi-spec/cdi/subscribers","subscription_url":"https://api.github.com/repos/cdi-spec/cdi/subscription","commits_url":"https://api.github.com/repos/cdi-spec/cdi/commits{/sha}","git_commits_url":"https://api.github.com/repos/cdi-spec/cdi/git/commits{/sha}","comments_url":"https://api.github.com/repos/cdi-spec/cdi/comments{/number}","issue_comment_url":"https://api.github.com/repos/cdi-spec/cdi/issues/comments{/number}","contents_url":"https://api.github.com/repos/cdi-spec/cdi/contents/{+path}","compare_url":"https://api.github.com/repos/cdi-spec/cdi/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cdi-spec/cdi/merges","archive_url":"https://api.github.com/repos/cdi-spec/cdi/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cdi-spec/cdi/downloads","issues_url":"https://api.github.com/repos/cdi-spec/cdi/issues{/number}","pulls_url":"https://api.github.com/repos/cdi-spec/cdi/pulls{/number}","milestones_url":"https://api.github.com/repos/cdi-spec/cdi/milestones{/number}","notifications_url":"https://api.github.com/repos/cdi-spec/cdi/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cdi-spec/cdi/labels{/name}","releases_url":"https://api.github.com/repos/cdi-spec/cdi/releases{/id}","deployments_url":"https://api.github.com/repos/cdi-spec/cdi/deployments","created_at":"2011-05-16T17:27:06Z","updated_at":"2016-03-18T09:34:54Z","pushed_at":"2016-03-22T10:20:37Z","git_url":"git://github.com/cdi-spec/cdi.git","ssh_url":"git@github.com:cdi-spec/cdi.git","clone_url":"https://github.com/cdi-spec/cdi.git","svn_url":"https://github.com/cdi-spec/cdi","homepage":"","size":8245,"stargazers_count":48,"watchers_count":48,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":32,"mirror_url":null,"open_issues_count":10,"forks":32,"open_issues":10,"watchers":48,"default_branch":"2.0-EDR2"}},"_links":{"self":{"href":"https://api.github.com/repos/cdi-spec/cdi/pulls/270"},"html":{"href":"https://github.com/cdi-spec/cdi/pull/270"},"issue":{"href":"https://api.github.com/repos/cdi-spec/cdi/issues/270"},"comments":{"href":"https://api.github.com/repos/cdi-spec/cdi/issues/270/comments"},"review_comments":{"href":"https://api.github.com/repos/cdi-spec/cdi/pulls/270/comments"},"review_comment":{"href":"https://api.github.com/repos/cdi-spec/cdi/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/cdi-spec/cdi/pulls/270/commits"},"statuses":{"href":"https://api.github.com/repos/cdi-spec/cdi/statuses/f916771afe4a98f0e8aeff2362e7ad8d2f8e9201"}}}}