)]}'
{"specs/zun-api-validation.rst":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"140324aeba6898c6c97752959747b7290a6cecb9","unresolved":false,"context_lines":[{"line_number":35,"context_line":"(https://pypi.python.org/pypi/jsonschema). A jsonschema validator object can"},{"line_number":36,"context_line":"be used to check each resource against an appropriate schema for that"},{"line_number":37,"context_line":"resource. If the validation passes, the request can follow the existing flow"},{"line_number":38,"context_line":"of control to the resource manager. If the request body parameters fail the"},{"line_number":39,"context_line":"validation specified by the resource schema, a validation error will be"},{"line_number":40,"context_line":"returned from the server."},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a6eadb0_0b0c8893","line":38,"range":{"start_line":38,"start_character":18,"end_line":38,"end_character":34},"updated":"2016-12-12 19:47:17.000000000","message":"Not sure exactly what is resource manager.....","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":16277,"name":"Pradeep Kumar Singh","email":"ps4openstack@gmail.com","username":"pradeep_singh"},"change_message_id":"fe32408cf1630a9dd710933302a71a70928e2733","unresolved":false,"context_lines":[{"line_number":35,"context_line":"(https://pypi.python.org/pypi/jsonschema). A jsonschema validator object can"},{"line_number":36,"context_line":"be used to check each resource against an appropriate schema for that"},{"line_number":37,"context_line":"resource. If the validation passes, the request can follow the existing flow"},{"line_number":38,"context_line":"of control to the resource manager. If the request body parameters fail the"},{"line_number":39,"context_line":"validation specified by the resource schema, a validation error will be"},{"line_number":40,"context_line":"returned from the server."},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a6eadb0_39bfbed1","line":38,"range":{"start_line":38,"start_character":18,"end_line":38,"end_character":34},"in_reply_to":"1a6eadb0_0b0c8893","updated":"2016-12-13 10:43:20.000000000","message":"@Hongbin, resource manager is generic term which processes resource, in our case it is api service.","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"adc8b328849d8c4707628aa8052e81ca2ca372b5","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            \u0027name\u0027: parameter_types.name,"},{"line_number":66,"context_line":"            \u0027image\u0027: parameter_types.image,"},{"line_number":67,"context_line":"            \u0027command\u0027: parameter_types.command,"},{"line_number":68,"context_line":"            \u003csnip\u003e"},{"line_number":69,"context_line":"        },"},{"line_number":70,"context_line":"        \u0027required\u0027: [\u0027image\u0027],"},{"line_number":71,"context_line":"        \u0027additionalProperties\u0027: True,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a71b18c_c34f3990","line":68,"range":{"start_line":68,"start_character":12,"end_line":68,"end_character":18},"updated":"2016-12-12 10:26:28.000000000","message":"I think this is wrongly formatted. Is it?","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":16277,"name":"Pradeep Kumar Singh","email":"ps4openstack@gmail.com","username":"pradeep_singh"},"change_message_id":"fe32408cf1630a9dd710933302a71a70928e2733","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            \u0027name\u0027: parameter_types.name,"},{"line_number":66,"context_line":"            \u0027image\u0027: parameter_types.image,"},{"line_number":67,"context_line":"            \u0027command\u0027: parameter_types.command,"},{"line_number":68,"context_line":"            \u003csnip\u003e"},{"line_number":69,"context_line":"        },"},{"line_number":70,"context_line":"        \u0027required\u0027: [\u0027image\u0027],"},{"line_number":71,"context_line":"        \u0027additionalProperties\u0027: True,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a6eadb0_d99faa5d","line":68,"range":{"start_line":68,"start_character":12,"end_line":68,"end_character":18},"in_reply_to":"1a6eadb0_ab4b94af","updated":"2016-12-13 10:43:20.000000000","message":"@Madhuri, Hongbin said correctly.","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"140324aeba6898c6c97752959747b7290a6cecb9","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            \u0027name\u0027: parameter_types.name,"},{"line_number":66,"context_line":"            \u0027image\u0027: parameter_types.image,"},{"line_number":67,"context_line":"            \u0027command\u0027: parameter_types.command,"},{"line_number":68,"context_line":"            \u003csnip\u003e"},{"line_number":69,"context_line":"        },"},{"line_number":70,"context_line":"        \u0027required\u0027: [\u0027image\u0027],"},{"line_number":71,"context_line":"        \u0027additionalProperties\u0027: True,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a6eadb0_ab4b94af","line":68,"range":{"start_line":68,"start_character":12,"end_line":68,"end_character":18},"in_reply_to":"3a71b18c_c34f3990","updated":"2016-12-12 19:47:17.000000000","message":"I think \u003csnip\u003e means cutting something that is too long.","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":9775,"name":"Sudipta Biswas","email":"sbiswas7@in.ibm.com","username":"sudswas"},"change_message_id":"0e2f5ffa35fa7a5a41ab74dc8c473479c754ed44","unresolved":false,"context_lines":[{"line_number":67,"context_line":"            \u0027command\u0027: parameter_types.command,"},{"line_number":68,"context_line":"            \u003csnip\u003e"},{"line_number":69,"context_line":"        },"},{"line_number":70,"context_line":"        \u0027required\u0027: [\u0027image\u0027],"},{"line_number":71,"context_line":"        \u0027additionalProperties\u0027: True,"},{"line_number":72,"context_line":"    }"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a6eadb0_714f9492","line":70,"updated":"2016-12-13 09:28:58.000000000","message":"I think this is what would avoid the need of traversing the entire tree before discovering a required field. https://review.openstack.org/#/c/407432/\n\nWhich is good :)","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"adc8b328849d8c4707628aa8052e81ca2ca372b5","unresolved":false,"context_lines":[{"line_number":139,"context_line":"   designed to be shared across all resource controllers validating request"},{"line_number":140,"context_line":"   bodies."},{"line_number":141,"context_line":"2. Introduce validation schemas for existing core API resources."},{"line_number":142,"context_line":"3. Introduce validation schemas for existing API extensions."},{"line_number":143,"context_line":"4. Enforce validation on proposed core API additions and extensions."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"Dependencies"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a71b18c_de954e32","line":142,"range":{"start_line":142,"start_character":45,"end_line":142,"end_character":59},"updated":"2016-12-12 10:26:28.000000000","message":"What are these?","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":16277,"name":"Pradeep Kumar Singh","email":"ps4openstack@gmail.com","username":"pradeep_singh"},"change_message_id":"fe32408cf1630a9dd710933302a71a70928e2733","unresolved":false,"context_lines":[{"line_number":139,"context_line":"   designed to be shared across all resource controllers validating request"},{"line_number":140,"context_line":"   bodies."},{"line_number":141,"context_line":"2. Introduce validation schemas for existing core API resources."},{"line_number":142,"context_line":"3. Introduce validation schemas for existing API extensions."},{"line_number":143,"context_line":"4. Enforce validation on proposed core API additions and extensions."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"Dependencies"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a6eadb0_398dfe31","line":142,"range":{"start_line":142,"start_character":45,"end_line":142,"end_character":59},"in_reply_to":"1a6eadb0_abe2b49d","updated":"2016-12-13 10:43:20.000000000","message":"Done","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"140324aeba6898c6c97752959747b7290a6cecb9","unresolved":false,"context_lines":[{"line_number":139,"context_line":"   designed to be shared across all resource controllers validating request"},{"line_number":140,"context_line":"   bodies."},{"line_number":141,"context_line":"2. Introduce validation schemas for existing core API resources."},{"line_number":142,"context_line":"3. Introduce validation schemas for existing API extensions."},{"line_number":143,"context_line":"4. Enforce validation on proposed core API additions and extensions."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"Dependencies"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a6eadb0_abe2b49d","line":142,"range":{"start_line":142,"start_character":45,"end_line":142,"end_character":59},"in_reply_to":"3a71b18c_de954e32","updated":"2016-12-12 19:47:17.000000000","message":"Good point. I don\u0027t think Zun has any API extension right now, so this item can be removed.","commit_id":"0de1607f1e5e83790630980bda3c029ed2addd56"}]}
