{"action":"created","issue":{"url":"https://api.github.com/repos/chrsmith/google-api-java-client/issues/305","labels_url":"https://api.github.com/repos/chrsmith/google-api-java-client/issues/305/labels{/name}","comments_url":"https://api.github.com/repos/chrsmith/google-api-java-client/issues/305/comments","events_url":"https://api.github.com/repos/chrsmith/google-api-java-client/issues/305/events","html_url":"https://github.com/chrsmith/google-api-java-client/issues/305","id":59404697,"number":305,"title":"Redesign how we generate properties for global parameters","user":{"login":"GoogleCodeExporter","id":9614759,"avatar_url":"https://avatars.githubusercontent.com/u/9614759?v=3","gravatar_id":"","url":"https://api.github.com/users/GoogleCodeExporter","html_url":"https://github.com/GoogleCodeExporter","followers_url":"https://api.github.com/users/GoogleCodeExporter/followers","following_url":"https://api.github.com/users/GoogleCodeExporter/following{/other_user}","gists_url":"https://api.github.com/users/GoogleCodeExporter/gists{/gist_id}","starred_url":"https://api.github.com/users/GoogleCodeExporter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GoogleCodeExporter/subscriptions","organizations_url":"https://api.github.com/users/GoogleCodeExporter/orgs","repos_url":"https://api.github.com/users/GoogleCodeExporter/repos","events_url":"https://api.github.com/users/GoogleCodeExporter/events{/privacy}","received_events_url":"https://api.github.com/users/GoogleCodeExporter/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/chrsmith/google-api-java-client/labels/auto-migrated","name":"auto-migrated","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/google-api-java-client/labels/Component-Google-APIs","name":"Component-Google-APIs","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/google-api-java-client/labels/Milestone-CodeGenVersion1.3.0","name":"Milestone-CodeGenVersion1.3.0","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/google-api-java-client/labels/Priority-High","name":"Priority-High","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/google-api-java-client/labels/Type-Enhancement","name":"Type-Enhancement","color":"ededed"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-03-01T16:44:09Z","updated_at":"2015-03-01T16:44:10Z","closed_at":"2015-03-01T16:44:10Z","body":"```\nCurrently we have key, prettyPrint, and userIp at the ApiClient level, and \nfields at the per-request basis.  There are several problems/limitations to \nthis approach:\n\n1. We are hand-crafting this list rather than truly generating it from \nDiscovery's global parameter list.  If a new parameter is added, we won't get \nit.  Similarly, if a parameter is not applicable to an API, we won't suppress \ngenerating it.\n\n2. We have to make a decision for each parameter whether it needs to be \nper-request or at the ApiClient level.  There may be use cases like userIp \nwhere there are different use cases for being at one level or the other.\n\nI propose instead to generate all global parameters directly from Discovery to \nthe per-request level, and have none of these parameters at the ApiClient \nlevel.  But then I also want some kind of RemoteRequestInitializer interface \nthat works just like HttpRequestInitializer that allows any parameter in \nRemoteRequest to be initialized the same across all RemoteRequests.\n```\n\nOriginal issue reported on code.google.com by `rmis...@google.com` on 27 Sep 2011 at 3:48"},"comment":{"url":"https://api.github.com/repos/chrsmith/google-api-java-client/issues/comments/76610029","html_url":"https://github.com/chrsmith/google-api-java-client/issues/305#issuecomment-76610029","issue_url":"https://api.github.com/repos/chrsmith/google-api-java-client/issues/305","id":76610029,"user":{"login":"GoogleCodeExporter","id":9614759,"avatar_url":"https://avatars.githubusercontent.com/u/9614759?v=3","gravatar_id":"","url":"https://api.github.com/users/GoogleCodeExporter","html_url":"https://github.com/GoogleCodeExporter","followers_url":"https://api.github.com/users/GoogleCodeExporter/followers","following_url":"https://api.github.com/users/GoogleCodeExporter/following{/other_user}","gists_url":"https://api.github.com/users/GoogleCodeExporter/gists{/gist_id}","starred_url":"https://api.github.com/users/GoogleCodeExporter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GoogleCodeExporter/subscriptions","organizations_url":"https://api.github.com/users/GoogleCodeExporter/orgs","repos_url":"https://api.github.com/users/GoogleCodeExporter/repos","events_url":"https://api.github.com/users/GoogleCodeExporter/events{/privacy}","received_events_url":"https://api.github.com/users/GoogleCodeExporter/received_events","type":"User","site_admin":false},"created_at":"2015-03-01T16:44:10Z","updated_at":"2015-03-01T16:44:10Z","body":"```\nThis issue was reported internally by yanivi@google.com\n```\n\nOriginal comment by `rmis...@google.com` on 27 Sep 2011 at 5:43"}}