google-dfp-api 0.3.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. data/ChangeLog +3 -0
  2. data/README +2 -2
  3. data/examples/v201206/audience_segment_service/get_all_audience_segments.rb +93 -0
  4. data/examples/v201206/common/error_handling.rb +76 -0
  5. data/examples/v201206/common/oauth2_handling.rb +128 -0
  6. data/examples/v201206/common/oauth_handling.rb +131 -0
  7. data/examples/v201206/company_service/create_companies.rb +81 -0
  8. data/examples/v201206/company_service/get_all_companies.rb +92 -0
  9. data/examples/v201206/company_service/get_companies_by_statement.rb +88 -0
  10. data/examples/v201206/company_service/get_company.rb +72 -0
  11. data/examples/v201206/company_service/update_companies.rb +95 -0
  12. data/examples/v201206/content_service/get_all_content.rb +94 -0
  13. data/examples/v201206/content_service/get_content_by_category.rb +136 -0
  14. data/examples/v201206/creative_service/copy_image_creatives.rb +115 -0
  15. data/examples/v201206/creative_service/create_creative_from_template.rb +139 -0
  16. data/examples/v201206/creative_service/create_creatives.rb +106 -0
  17. data/examples/v201206/creative_service/create_custom_creative.rb +104 -0
  18. data/examples/v201206/creative_service/get_all_creatives.rb +93 -0
  19. data/examples/v201206/creative_service/get_creative.rb +72 -0
  20. data/examples/v201206/creative_service/get_creatives_by_statement.rb +87 -0
  21. data/examples/v201206/creative_service/update_creatives.rb +96 -0
  22. data/examples/v201206/creative_set_service/create_creative_set.rb +83 -0
  23. data/examples/v201206/creative_set_service/get_all_creative_sets.rb +94 -0
  24. data/examples/v201206/creative_set_service/get_creative_sets_by_statement.rb +90 -0
  25. data/examples/v201206/creative_set_service/update_creative_sets.rb +85 -0
  26. data/examples/v201206/creative_template_service/get_all_creative_templates.rb +94 -0
  27. data/examples/v201206/creative_template_service/get_creative_template.rb +74 -0
  28. data/examples/v201206/creative_template_service/get_creative_templates_by_statement.rb +80 -0
  29. data/examples/v201206/custom_field_service/create_custom_field_options.rb +87 -0
  30. data/examples/v201206/custom_field_service/create_custom_fields.rb +86 -0
  31. data/examples/v201206/custom_field_service/deactivate_all_line_item_custom_fields.rb +112 -0
  32. data/examples/v201206/custom_field_service/get_all_custom_fields.rb +102 -0
  33. data/examples/v201206/custom_field_service/get_all_line_item_custom_fields.rb +86 -0
  34. data/examples/v201206/custom_field_service/set_line_item_custom_field_value.rb +135 -0
  35. data/examples/v201206/custom_field_service/update_custom_fields.rb +83 -0
  36. data/examples/v201206/custom_targeting_service/create_custom_targeting_keys_and_values.rb +140 -0
  37. data/examples/v201206/custom_targeting_service/delete_custom_targeting_keys.rb +121 -0
  38. data/examples/v201206/custom_targeting_service/delete_custom_targeting_values.rb +125 -0
  39. data/examples/v201206/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +148 -0
  40. data/examples/v201206/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +92 -0
  41. data/examples/v201206/custom_targeting_service/get_custom_targeting_values_by_statement.rb +98 -0
  42. data/examples/v201206/custom_targeting_service/update_custom_targeting_keys.rb +94 -0
  43. data/examples/v201206/custom_targeting_service/update_custom_targeting_values.rb +106 -0
  44. data/examples/v201206/forecast_service/get_forecast.rb +107 -0
  45. data/examples/v201206/forecast_service/get_forecast_by_id.rb +80 -0
  46. data/examples/v201206/inventory_service/create_ad_units.rb +101 -0
  47. data/examples/v201206/inventory_service/create_mobile_ad_unit.rb +100 -0
  48. data/examples/v201206/inventory_service/create_video_ad_unit.rb +108 -0
  49. data/examples/v201206/inventory_service/deactivate_ad_units.rb +119 -0
  50. data/examples/v201206/inventory_service/get_ad_unit.rb +72 -0
  51. data/examples/v201206/inventory_service/get_ad_unit_sizes.rb +85 -0
  52. data/examples/v201206/inventory_service/get_ad_units_by_statement.rb +96 -0
  53. data/examples/v201206/inventory_service/get_all_ad_units.rb +93 -0
  54. data/examples/v201206/inventory_service/update_ad_units.rb +94 -0
  55. data/examples/v201206/label_service/create_labels.rb +83 -0
  56. data/examples/v201206/label_service/deactivate_labels.rb +118 -0
  57. data/examples/v201206/label_service/get_all_labels.rb +95 -0
  58. data/examples/v201206/label_service/get_label.rb +76 -0
  59. data/examples/v201206/label_service/get_labels_by_statement.rb +81 -0
  60. data/examples/v201206/label_service/update_labels.rb +102 -0
  61. data/examples/v201206/line_item_creative_association_service/create_licas.rb +94 -0
  62. data/examples/v201206/line_item_creative_association_service/deactivate_licas.rb +127 -0
  63. data/examples/v201206/line_item_creative_association_service/get_all_licas.rb +95 -0
  64. data/examples/v201206/line_item_creative_association_service/get_lica.rb +77 -0
  65. data/examples/v201206/line_item_creative_association_service/get_licas_by_statement.rb +91 -0
  66. data/examples/v201206/line_item_creative_association_service/update_licas.rb +91 -0
  67. data/examples/v201206/line_item_service/activate_line_items.rb +131 -0
  68. data/examples/v201206/line_item_service/create_line_items.rb +177 -0
  69. data/examples/v201206/line_item_service/create_mobile_line_item.rb +135 -0
  70. data/examples/v201206/line_item_service/create_video_line_item.rb +156 -0
  71. data/examples/v201206/line_item_service/get_all_line_items.rb +94 -0
  72. data/examples/v201206/line_item_service/get_line_item.rb +74 -0
  73. data/examples/v201206/line_item_service/get_line_items_by_statement.rb +93 -0
  74. data/examples/v201206/line_item_service/get_recently_updated_line_items.rb +98 -0
  75. data/examples/v201206/line_item_service/target_custom_criteria.rb +129 -0
  76. data/examples/v201206/line_item_service/update_line_items.rb +109 -0
  77. data/examples/v201206/network_service/get_all_networks.rb +74 -0
  78. data/examples/v201206/network_service/get_current_network.rb +66 -0
  79. data/examples/v201206/network_service/make_test_network.rb +76 -0
  80. data/examples/v201206/order_service/approve_orders.rb +122 -0
  81. data/examples/v201206/order_service/create_orders.rb +92 -0
  82. data/examples/v201206/order_service/get_all_orders.rb +93 -0
  83. data/examples/v201206/order_service/get_order.rb +74 -0
  84. data/examples/v201206/order_service/get_orders_by_statement.rb +90 -0
  85. data/examples/v201206/order_service/update_orders.rb +95 -0
  86. data/examples/v201206/placement_service/create_placements.rb +131 -0
  87. data/examples/v201206/placement_service/deactivate_placements.rb +118 -0
  88. data/examples/v201206/placement_service/get_all_placements.rb +93 -0
  89. data/examples/v201206/placement_service/get_placement.rb +74 -0
  90. data/examples/v201206/placement_service/get_placements_by_statement.rb +86 -0
  91. data/examples/v201206/placement_service/update_placements.rb +97 -0
  92. data/examples/v201206/publisher_query_language_service/get_all_cities.rb +90 -0
  93. data/examples/v201206/report_service/download_report.rb +81 -0
  94. data/examples/v201206/report_service/run_delivery_report.rb +103 -0
  95. data/examples/v201206/report_service/run_inventory_report.rb +97 -0
  96. data/examples/v201206/report_service/run_merged_delivery_report.rb +94 -0
  97. data/examples/v201206/report_service/run_sales_report.rb +92 -0
  98. data/examples/v201206/suggested_ad_unit_service/approve_all_suggested_ad_units.rb +109 -0
  99. data/examples/v201206/suggested_ad_unit_service/get_all_suggested_ad_units.rb +96 -0
  100. data/examples/v201206/suggested_ad_unit_service/get_suggested_ad_unit.rb +75 -0
  101. data/examples/v201206/suggested_ad_unit_service/get_suggested_ad_units_by_statement.rb +92 -0
  102. data/examples/v201206/team_service/create_teams.rb +83 -0
  103. data/examples/v201206/team_service/get_all_teams.rb +92 -0
  104. data/examples/v201206/team_service/get_team.rb +74 -0
  105. data/examples/v201206/team_service/get_teams_by_statement.rb +78 -0
  106. data/examples/v201206/team_service/update_teams.rb +95 -0
  107. data/examples/v201206/third_party_slot_service/archive_third_party_slots.rb +125 -0
  108. data/examples/v201206/third_party_slot_service/create_third_party_slot.rb +91 -0
  109. data/examples/v201206/third_party_slot_service/get_all_third_party_slots.rb +93 -0
  110. data/examples/v201206/third_party_slot_service/get_third_party_slot_by_statement.rb +86 -0
  111. data/examples/v201206/third_party_slot_service/update_third_party_slots.rb +95 -0
  112. data/examples/v201206/user_service/create_users.rb +89 -0
  113. data/examples/v201206/user_service/deactivate_users.rb +97 -0
  114. data/examples/v201206/user_service/get_all_roles.rb +73 -0
  115. data/examples/v201206/user_service/get_all_users.rb +93 -0
  116. data/examples/v201206/user_service/get_current_user.rb +66 -0
  117. data/examples/v201206/user_service/get_user.rb +73 -0
  118. data/examples/v201206/user_service/get_users_by_statement.rb +79 -0
  119. data/examples/v201206/user_service/update_users.rb +89 -0
  120. data/examples/v201206/user_team_association_service/create_user_team_associations.rb +86 -0
  121. data/examples/v201206/user_team_association_service/delete_user_team_associations.rb +111 -0
  122. data/examples/v201206/user_team_association_service/get_all_user_team_associations.rb +94 -0
  123. data/examples/v201206/user_team_association_service/get_user_team_association.rb +76 -0
  124. data/examples/v201206/user_team_association_service/get_user_team_associations_by_statement.rb +94 -0
  125. data/examples/v201206/user_team_association_service/update_user_team_associations.rb +102 -0
  126. data/lib/dfp_api/api_config.rb +14 -4
  127. data/lib/dfp_api/v201108/company_service.rb +1 -1
  128. data/lib/dfp_api/v201108/company_service_registry.rb +1 -1
  129. data/lib/dfp_api/v201108/creative_service.rb +1 -1
  130. data/lib/dfp_api/v201108/creative_service_registry.rb +1 -1
  131. data/lib/dfp_api/v201108/custom_targeting_service.rb +1 -1
  132. data/lib/dfp_api/v201108/custom_targeting_service_registry.rb +1 -1
  133. data/lib/dfp_api/v201108/forecast_service.rb +1 -1
  134. data/lib/dfp_api/v201108/forecast_service_registry.rb +1 -1
  135. data/lib/dfp_api/v201108/inventory_service.rb +1 -1
  136. data/lib/dfp_api/v201108/inventory_service_registry.rb +1 -1
  137. data/lib/dfp_api/v201108/label_service.rb +1 -1
  138. data/lib/dfp_api/v201108/label_service_registry.rb +1 -1
  139. data/lib/dfp_api/v201108/line_item_creative_association_service.rb +1 -1
  140. data/lib/dfp_api/v201108/line_item_creative_association_service_registry.rb +1 -1
  141. data/lib/dfp_api/v201108/line_item_service.rb +1 -1
  142. data/lib/dfp_api/v201108/line_item_service_registry.rb +1 -1
  143. data/lib/dfp_api/v201108/network_service.rb +1 -1
  144. data/lib/dfp_api/v201108/network_service_registry.rb +1 -1
  145. data/lib/dfp_api/v201108/order_service.rb +1 -1
  146. data/lib/dfp_api/v201108/order_service_registry.rb +1 -1
  147. data/lib/dfp_api/v201108/placement_service.rb +1 -1
  148. data/lib/dfp_api/v201108/placement_service_registry.rb +1 -1
  149. data/lib/dfp_api/v201108/publisher_query_language_service.rb +1 -1
  150. data/lib/dfp_api/v201108/publisher_query_language_service_registry.rb +1 -1
  151. data/lib/dfp_api/v201108/report_service.rb +1 -1
  152. data/lib/dfp_api/v201108/report_service_registry.rb +1 -1
  153. data/lib/dfp_api/v201108/third_party_slot_service.rb +1 -1
  154. data/lib/dfp_api/v201108/third_party_slot_service_registry.rb +1 -1
  155. data/lib/dfp_api/v201108/user_service.rb +1 -1
  156. data/lib/dfp_api/v201108/user_service_registry.rb +1 -1
  157. data/lib/dfp_api/v201111/company_service.rb +1 -1
  158. data/lib/dfp_api/v201111/company_service_registry.rb +1 -1
  159. data/lib/dfp_api/v201111/content_service.rb +1 -1
  160. data/lib/dfp_api/v201111/content_service_registry.rb +1 -1
  161. data/lib/dfp_api/v201111/creative_service.rb +1 -1
  162. data/lib/dfp_api/v201111/creative_service_registry.rb +1 -1
  163. data/lib/dfp_api/v201111/creative_template_service.rb +1 -1
  164. data/lib/dfp_api/v201111/creative_template_service_registry.rb +1 -1
  165. data/lib/dfp_api/v201111/custom_targeting_service.rb +1 -1
  166. data/lib/dfp_api/v201111/custom_targeting_service_registry.rb +1 -1
  167. data/lib/dfp_api/v201111/forecast_service.rb +1 -1
  168. data/lib/dfp_api/v201111/forecast_service_registry.rb +1 -1
  169. data/lib/dfp_api/v201111/inventory_service.rb +1 -1
  170. data/lib/dfp_api/v201111/inventory_service_registry.rb +1 -1
  171. data/lib/dfp_api/v201111/label_service.rb +1 -1
  172. data/lib/dfp_api/v201111/label_service_registry.rb +1 -1
  173. data/lib/dfp_api/v201111/line_item_creative_association_service.rb +1 -1
  174. data/lib/dfp_api/v201111/line_item_creative_association_service_registry.rb +1 -1
  175. data/lib/dfp_api/v201111/line_item_service.rb +1 -1
  176. data/lib/dfp_api/v201111/line_item_service_registry.rb +1 -1
  177. data/lib/dfp_api/v201111/network_service.rb +1 -1
  178. data/lib/dfp_api/v201111/network_service_registry.rb +1 -1
  179. data/lib/dfp_api/v201111/order_service.rb +1 -1
  180. data/lib/dfp_api/v201111/order_service_registry.rb +1 -1
  181. data/lib/dfp_api/v201111/placement_service.rb +1 -1
  182. data/lib/dfp_api/v201111/placement_service_registry.rb +1 -1
  183. data/lib/dfp_api/v201111/publisher_query_language_service.rb +1 -1
  184. data/lib/dfp_api/v201111/publisher_query_language_service_registry.rb +1 -1
  185. data/lib/dfp_api/v201111/report_service.rb +1 -1
  186. data/lib/dfp_api/v201111/report_service_registry.rb +1 -1
  187. data/lib/dfp_api/v201111/suggested_ad_unit_service.rb +1 -1
  188. data/lib/dfp_api/v201111/suggested_ad_unit_service_registry.rb +1 -1
  189. data/lib/dfp_api/v201111/third_party_slot_service.rb +1 -1
  190. data/lib/dfp_api/v201111/third_party_slot_service_registry.rb +1 -1
  191. data/lib/dfp_api/v201111/user_service.rb +1 -1
  192. data/lib/dfp_api/v201111/user_service_registry.rb +1 -1
  193. data/lib/dfp_api/v201201/company_service.rb +1 -1
  194. data/lib/dfp_api/v201201/company_service_registry.rb +1 -1
  195. data/lib/dfp_api/v201201/content_service.rb +1 -1
  196. data/lib/dfp_api/v201201/content_service_registry.rb +1 -1
  197. data/lib/dfp_api/v201201/creative_service.rb +1 -1
  198. data/lib/dfp_api/v201201/creative_service_registry.rb +1 -1
  199. data/lib/dfp_api/v201201/creative_template_service.rb +1 -1
  200. data/lib/dfp_api/v201201/creative_template_service_registry.rb +1 -1
  201. data/lib/dfp_api/v201201/custom_targeting_service.rb +1 -1
  202. data/lib/dfp_api/v201201/custom_targeting_service_registry.rb +1 -1
  203. data/lib/dfp_api/v201201/forecast_service.rb +1 -1
  204. data/lib/dfp_api/v201201/forecast_service_registry.rb +1 -1
  205. data/lib/dfp_api/v201201/inventory_service.rb +1 -1
  206. data/lib/dfp_api/v201201/inventory_service_registry.rb +1 -1
  207. data/lib/dfp_api/v201201/label_service.rb +1 -1
  208. data/lib/dfp_api/v201201/label_service_registry.rb +1 -1
  209. data/lib/dfp_api/v201201/line_item_creative_association_service.rb +1 -1
  210. data/lib/dfp_api/v201201/line_item_creative_association_service_registry.rb +1 -1
  211. data/lib/dfp_api/v201201/line_item_service.rb +1 -1
  212. data/lib/dfp_api/v201201/line_item_service_registry.rb +1 -1
  213. data/lib/dfp_api/v201201/network_service.rb +1 -1
  214. data/lib/dfp_api/v201201/network_service_registry.rb +1 -1
  215. data/lib/dfp_api/v201201/order_service.rb +1 -1
  216. data/lib/dfp_api/v201201/order_service_registry.rb +1 -1
  217. data/lib/dfp_api/v201201/placement_service.rb +1 -1
  218. data/lib/dfp_api/v201201/placement_service_registry.rb +1 -1
  219. data/lib/dfp_api/v201201/publisher_query_language_service.rb +1 -1
  220. data/lib/dfp_api/v201201/publisher_query_language_service_registry.rb +1 -1
  221. data/lib/dfp_api/v201201/report_service.rb +1 -1
  222. data/lib/dfp_api/v201201/report_service_registry.rb +1 -1
  223. data/lib/dfp_api/v201201/suggested_ad_unit_service.rb +1 -1
  224. data/lib/dfp_api/v201201/suggested_ad_unit_service_registry.rb +1 -1
  225. data/lib/dfp_api/v201201/team_service.rb +1 -1
  226. data/lib/dfp_api/v201201/team_service_registry.rb +1 -1
  227. data/lib/dfp_api/v201201/third_party_slot_service.rb +1 -1
  228. data/lib/dfp_api/v201201/third_party_slot_service_registry.rb +1 -1
  229. data/lib/dfp_api/v201201/user_service.rb +1 -1
  230. data/lib/dfp_api/v201201/user_service_registry.rb +1 -1
  231. data/lib/dfp_api/v201203/audience_segment_service.rb +1 -1
  232. data/lib/dfp_api/v201203/audience_segment_service_registry.rb +1 -1
  233. data/lib/dfp_api/v201203/company_service.rb +1 -1
  234. data/lib/dfp_api/v201203/company_service_registry.rb +1 -1
  235. data/lib/dfp_api/v201203/content_service.rb +1 -1
  236. data/lib/dfp_api/v201203/content_service_registry.rb +1 -1
  237. data/lib/dfp_api/v201203/creative_service.rb +1 -1
  238. data/lib/dfp_api/v201203/creative_service_registry.rb +1 -1
  239. data/lib/dfp_api/v201203/creative_template_service.rb +1 -1
  240. data/lib/dfp_api/v201203/creative_template_service_registry.rb +1 -1
  241. data/lib/dfp_api/v201203/custom_targeting_service.rb +1 -1
  242. data/lib/dfp_api/v201203/custom_targeting_service_registry.rb +1 -1
  243. data/lib/dfp_api/v201203/forecast_service.rb +1 -1
  244. data/lib/dfp_api/v201203/forecast_service_registry.rb +1 -1
  245. data/lib/dfp_api/v201203/inventory_service.rb +1 -1
  246. data/lib/dfp_api/v201203/inventory_service_registry.rb +1 -1
  247. data/lib/dfp_api/v201203/label_service.rb +1 -1
  248. data/lib/dfp_api/v201203/label_service_registry.rb +1 -1
  249. data/lib/dfp_api/v201203/line_item_creative_association_service.rb +1 -1
  250. data/lib/dfp_api/v201203/line_item_creative_association_service_registry.rb +1 -1
  251. data/lib/dfp_api/v201203/line_item_service.rb +1 -1
  252. data/lib/dfp_api/v201203/line_item_service_registry.rb +1 -1
  253. data/lib/dfp_api/v201203/network_service.rb +1 -1
  254. data/lib/dfp_api/v201203/network_service_registry.rb +1 -1
  255. data/lib/dfp_api/v201203/order_service.rb +1 -1
  256. data/lib/dfp_api/v201203/order_service_registry.rb +1 -1
  257. data/lib/dfp_api/v201203/placement_service.rb +1 -1
  258. data/lib/dfp_api/v201203/placement_service_registry.rb +1 -1
  259. data/lib/dfp_api/v201203/publisher_query_language_service.rb +1 -1
  260. data/lib/dfp_api/v201203/publisher_query_language_service_registry.rb +1 -1
  261. data/lib/dfp_api/v201203/report_service.rb +1 -1
  262. data/lib/dfp_api/v201203/report_service_registry.rb +1 -1
  263. data/lib/dfp_api/v201203/suggested_ad_unit_service.rb +1 -1
  264. data/lib/dfp_api/v201203/suggested_ad_unit_service_registry.rb +1 -1
  265. data/lib/dfp_api/v201203/team_service.rb +1 -1
  266. data/lib/dfp_api/v201203/team_service_registry.rb +1 -1
  267. data/lib/dfp_api/v201203/third_party_slot_service.rb +1 -1
  268. data/lib/dfp_api/v201203/third_party_slot_service_registry.rb +1 -1
  269. data/lib/dfp_api/v201203/user_service.rb +1 -1
  270. data/lib/dfp_api/v201203/user_service_registry.rb +1 -1
  271. data/lib/dfp_api/v201204/audience_segment_service.rb +1 -1
  272. data/lib/dfp_api/v201204/audience_segment_service_registry.rb +1 -1
  273. data/lib/dfp_api/v201204/company_service.rb +1 -1
  274. data/lib/dfp_api/v201204/company_service_registry.rb +1 -1
  275. data/lib/dfp_api/v201204/content_service.rb +1 -1
  276. data/lib/dfp_api/v201204/content_service_registry.rb +1 -1
  277. data/lib/dfp_api/v201204/creative_service.rb +1 -1
  278. data/lib/dfp_api/v201204/creative_service_registry.rb +1 -1
  279. data/lib/dfp_api/v201204/creative_template_service.rb +1 -1
  280. data/lib/dfp_api/v201204/creative_template_service_registry.rb +1 -1
  281. data/lib/dfp_api/v201204/custom_field_service.rb +1 -1
  282. data/lib/dfp_api/v201204/custom_field_service_registry.rb +1 -1
  283. data/lib/dfp_api/v201204/custom_targeting_service.rb +1 -1
  284. data/lib/dfp_api/v201204/custom_targeting_service_registry.rb +1 -1
  285. data/lib/dfp_api/v201204/forecast_service.rb +1 -1
  286. data/lib/dfp_api/v201204/forecast_service_registry.rb +1 -1
  287. data/lib/dfp_api/v201204/inventory_service.rb +1 -1
  288. data/lib/dfp_api/v201204/inventory_service_registry.rb +1 -1
  289. data/lib/dfp_api/v201204/label_service.rb +1 -1
  290. data/lib/dfp_api/v201204/label_service_registry.rb +1 -1
  291. data/lib/dfp_api/v201204/line_item_creative_association_service.rb +1 -1
  292. data/lib/dfp_api/v201204/line_item_creative_association_service_registry.rb +1 -1
  293. data/lib/dfp_api/v201204/line_item_service.rb +1 -1
  294. data/lib/dfp_api/v201204/line_item_service_registry.rb +1 -1
  295. data/lib/dfp_api/v201204/network_service.rb +1 -1
  296. data/lib/dfp_api/v201204/network_service_registry.rb +1 -1
  297. data/lib/dfp_api/v201204/order_service.rb +1 -1
  298. data/lib/dfp_api/v201204/order_service_registry.rb +1 -1
  299. data/lib/dfp_api/v201204/placement_service.rb +1 -1
  300. data/lib/dfp_api/v201204/placement_service_registry.rb +1 -1
  301. data/lib/dfp_api/v201204/publisher_query_language_service.rb +1 -1
  302. data/lib/dfp_api/v201204/publisher_query_language_service_registry.rb +1 -1
  303. data/lib/dfp_api/v201204/report_service.rb +1 -1
  304. data/lib/dfp_api/v201204/report_service_registry.rb +1 -1
  305. data/lib/dfp_api/v201204/suggested_ad_unit_service.rb +1 -1
  306. data/lib/dfp_api/v201204/suggested_ad_unit_service_registry.rb +1 -1
  307. data/lib/dfp_api/v201204/team_service.rb +1 -1
  308. data/lib/dfp_api/v201204/team_service_registry.rb +1 -1
  309. data/lib/dfp_api/v201204/third_party_slot_service.rb +1 -1
  310. data/lib/dfp_api/v201204/third_party_slot_service_registry.rb +1 -1
  311. data/lib/dfp_api/v201204/user_service.rb +1 -1
  312. data/lib/dfp_api/v201204/user_service_registry.rb +1 -1
  313. data/lib/dfp_api/v201204/user_team_association_service.rb +1 -1
  314. data/lib/dfp_api/v201204/user_team_association_service_registry.rb +1 -1
  315. data/lib/dfp_api/v201206/audience_segment_service.rb +34 -0
  316. data/lib/dfp_api/v201206/audience_segment_service_registry.rb +46 -0
  317. data/lib/dfp_api/v201206/company_service.rb +54 -0
  318. data/lib/dfp_api/v201206/company_service_registry.rb +46 -0
  319. data/lib/dfp_api/v201206/content_service.rb +42 -0
  320. data/lib/dfp_api/v201206/content_service_registry.rb +46 -0
  321. data/lib/dfp_api/v201206/creative_service.rb +54 -0
  322. data/lib/dfp_api/v201206/creative_service_registry.rb +46 -0
  323. data/lib/dfp_api/v201206/creative_set_service.rb +46 -0
  324. data/lib/dfp_api/v201206/creative_set_service_registry.rb +46 -0
  325. data/lib/dfp_api/v201206/creative_template_service.rb +38 -0
  326. data/lib/dfp_api/v201206/creative_template_service_registry.rb +46 -0
  327. data/lib/dfp_api/v201206/custom_field_service.rb +78 -0
  328. data/lib/dfp_api/v201206/custom_field_service_registry.rb +46 -0
  329. data/lib/dfp_api/v201206/custom_targeting_service.rb +62 -0
  330. data/lib/dfp_api/v201206/custom_targeting_service_registry.rb +46 -0
  331. data/lib/dfp_api/v201206/forecast_service.rb +38 -0
  332. data/lib/dfp_api/v201206/forecast_service_registry.rb +46 -0
  333. data/lib/dfp_api/v201206/inventory_service.rb +62 -0
  334. data/lib/dfp_api/v201206/inventory_service_registry.rb +46 -0
  335. data/lib/dfp_api/v201206/label_service.rb +58 -0
  336. data/lib/dfp_api/v201206/label_service_registry.rb +46 -0
  337. data/lib/dfp_api/v201206/line_item_creative_association_service.rb +62 -0
  338. data/lib/dfp_api/v201206/line_item_creative_association_service_registry.rb +46 -0
  339. data/lib/dfp_api/v201206/line_item_service.rb +58 -0
  340. data/lib/dfp_api/v201206/line_item_service_registry.rb +46 -0
  341. data/lib/dfp_api/v201206/network_service.rb +46 -0
  342. data/lib/dfp_api/v201206/network_service_registry.rb +46 -0
  343. data/lib/dfp_api/v201206/order_service.rb +58 -0
  344. data/lib/dfp_api/v201206/order_service_registry.rb +46 -0
  345. data/lib/dfp_api/v201206/placement_service.rb +58 -0
  346. data/lib/dfp_api/v201206/placement_service_registry.rb +46 -0
  347. data/lib/dfp_api/v201206/publisher_query_language_service.rb +34 -0
  348. data/lib/dfp_api/v201206/publisher_query_language_service_registry.rb +46 -0
  349. data/lib/dfp_api/v201206/report_service.rb +42 -0
  350. data/lib/dfp_api/v201206/report_service_registry.rb +46 -0
  351. data/lib/dfp_api/v201206/suggested_ad_unit_service.rb +42 -0
  352. data/lib/dfp_api/v201206/suggested_ad_unit_service_registry.rb +46 -0
  353. data/lib/dfp_api/v201206/team_service.rb +54 -0
  354. data/lib/dfp_api/v201206/team_service_registry.rb +46 -0
  355. data/lib/dfp_api/v201206/third_party_slot_service.rb +46 -0
  356. data/lib/dfp_api/v201206/third_party_slot_service_registry.rb +46 -0
  357. data/lib/dfp_api/v201206/user_service.rb +66 -0
  358. data/lib/dfp_api/v201206/user_service_registry.rb +46 -0
  359. data/lib/dfp_api/v201206/user_team_association_service.rb +58 -0
  360. data/lib/dfp_api/v201206/user_team_association_service_registry.rb +46 -0
  361. data/lib/dfp_api/version.rb +1 -1
  362. data/test/bugs/test_issue_00000016.rb +2 -2
  363. metadata +199 -50
@@ -0,0 +1,92 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example gets suggested ad units that have more than 50 requests. The
22
+ # statement retrieves up to the maximum page size limit of 500.
23
+ #
24
+ # This feature is only available to DFP premium solution networks.
25
+ #
26
+ # Tags: SuggestedAdUnitService.getSuggestedAdUnitsByStatement
27
+
28
+ require 'dfp_api'
29
+
30
+ API_VERSION = :v201206
31
+ NUMBER_OF_REQUESTS = 50
32
+
33
+ def get_suggested_ad_units_by_statement()
34
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
35
+ dfp = DfpApi::Api.new
36
+
37
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
38
+ # the configuration file or provide your own logger:
39
+ # dfp.logger = Logger.new('dfp_xml.log')
40
+
41
+ # Get the SuggestedAdUnitService.
42
+ suggested_ad_unit_service = dfp.service(:SuggestedAdUnitService, API_VERSION)
43
+
44
+ # Create a statement to only select suggested ad units with more than 50
45
+ # requests (with maximum limit of 500).
46
+ statement = {
47
+ :query => 'WHERE numRequests > :num_requests LIMIT 500',
48
+ :values => [
49
+ {:key => 'num_requests',
50
+ :value => {:value => NUMBER_OF_REQUESTS,
51
+ :xsi_type => 'NumberValue'}}
52
+ ]
53
+ }
54
+
55
+ # Get ad units by statement.
56
+ page =
57
+ suggested_ad_unit_service.get_suggested_ad_units_by_statement(statement)
58
+
59
+ if page[:results]
60
+ # Print details about each suggested ad unit in results.
61
+ page[:results].each_with_index do |ad_unit, index|
62
+ puts "%d) Suggested ad unit ID: '%s', number of requests: %d" %
63
+ [index, ad_unit[:id], ad_unit[:num_requests]]
64
+ end
65
+ end
66
+
67
+ # Print a footer.
68
+ if page.include?(:total_result_set_size)
69
+ puts "Total number of suggested ad units: %d" % page[:total_result_set_size]
70
+ end
71
+ end
72
+
73
+ if __FILE__ == $0
74
+ begin
75
+ get_suggested_ad_units_by_statement()
76
+
77
+ # HTTP errors.
78
+ rescue AdsCommon::Errors::HttpError => e
79
+ puts "HTTP Error: %s" % e
80
+
81
+ # API errors.
82
+ rescue DfpApi::Errors::ApiException => e
83
+ puts "Message: %s" % e.message
84
+ puts 'Errors:'
85
+ e.errors.each_with_index do |error, index|
86
+ puts "\tError [%d]:" % (index + 1)
87
+ error.each do |field, value|
88
+ puts "\t\t%s: %s" % [field, value]
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,83 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example creates new teams with the logged in user added to each team. To
22
+ # determine which teams exist, run get_all_teams.rb.
23
+ #
24
+ # Tags: TeamService.createTeams
25
+
26
+ require 'dfp_api'
27
+
28
+ API_VERSION = :v201206
29
+ ITEM_COUNT = 5
30
+
31
+ def create_teams()
32
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
33
+ dfp = DfpApi::Api.new
34
+
35
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
36
+ # the configuration file or provide your own logger:
37
+ # dfp.logger = Logger.new('dfp_xml.log')
38
+
39
+ # Get the TeamService.
40
+ team_service = dfp.service(:TeamService, API_VERSION)
41
+
42
+ # Create an array to store local team objects.
43
+ teams = (1..ITEM_COUNT).map do |index|
44
+ {
45
+ :name => "Team #%d" % index,
46
+ :has_all_companies => false,
47
+ :has_all_inventory => false
48
+ }
49
+ end
50
+
51
+ # Create the teams on the server.
52
+ return_teams = team_service.create_teams(teams)
53
+
54
+ if return_teams
55
+ return_teams.each do |team|
56
+ puts "Team with ID: %d and name: '%s' was created." %
57
+ [team[:id], team[:name]]
58
+ end
59
+ else
60
+ raise 'No teams were created.'
61
+ end
62
+ end
63
+
64
+ if __FILE__ == $0
65
+ begin
66
+ create_teams()
67
+
68
+ # HTTP errors.
69
+ rescue AdsCommon::Errors::HttpError => e
70
+ puts "HTTP Error: %s" % e
71
+
72
+ # API errors.
73
+ rescue DfpApi::Errors::ApiException => e
74
+ puts "Message: %s" % e.message
75
+ puts 'Errors:'
76
+ e.errors.each_with_index do |error, index|
77
+ puts "\tError [%d]:" % (index + 1)
78
+ error.each do |field, value|
79
+ puts "\t\t%s: %s" % [field, value]
80
+ end
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,92 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example gets all teams. To create teams, run create_teams.rb.
22
+ #
23
+ # Tags: TeamService.getTeamsByStatement
24
+
25
+ require 'dfp_api'
26
+
27
+ API_VERSION = :v201206
28
+ PAGE_SIZE = 500
29
+
30
+ def get_all_teams()
31
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
32
+ dfp = DfpApi::Api.new
33
+
34
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
35
+ # the configuration file or provide your own logger:
36
+ # dfp.logger = Logger.new('dfp_xml.log')
37
+
38
+ # Get the TeamService.
39
+ team_service = dfp.service(:TeamService, API_VERSION)
40
+
41
+ # Define initial values.
42
+ offset = 0
43
+ page = {}
44
+
45
+ begin
46
+ # Create statement for one page with current offset.
47
+ statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
48
+
49
+ # Get teams by statement.
50
+ page = team_service.get_teams_by_statement(statement)
51
+
52
+ if page[:results]
53
+ # Increase query offset by page size.
54
+ offset += PAGE_SIZE
55
+
56
+ # Get the start index for printout.
57
+ start_index = page[:start_index]
58
+
59
+ # Print details about each team in results page.
60
+ page[:results].each_with_index do |team, index|
61
+ puts "%d) Team ID: %d, name: %s" %
62
+ [index + start_index, team[:id], team[:name]]
63
+ end
64
+ end
65
+ end while offset < page[:total_result_set_size]
66
+
67
+ # Print a footer
68
+ if page.include?(:total_result_set_size)
69
+ puts "Total number of teams: %d" % page[:total_result_set_size]
70
+ end
71
+ end
72
+
73
+ if __FILE__ == $0
74
+ begin
75
+ get_all_teams()
76
+
77
+ # HTTP errors.
78
+ rescue AdsCommon::Errors::HttpError => e
79
+ puts "HTTP Error: %s" % e
80
+
81
+ # API errors.
82
+ rescue DfpApi::Errors::ApiException => e
83
+ puts "Message: %s" % e.message
84
+ puts 'Errors:'
85
+ e.errors.each_with_index do |error, index|
86
+ puts "\tError [%d]:" % (index + 1)
87
+ error.each do |field, value|
88
+ puts "\t\t%s: %s" % [field, value]
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,74 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example gets a team by its ID. To determine which teams exist, run
22
+ # get_all_teams.rb.
23
+ #
24
+ # Tags: TeamService.getTeam
25
+
26
+ require 'dfp_api'
27
+
28
+ API_VERSION = :v201206
29
+
30
+ def get_team()
31
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
32
+ dfp = DfpApi::Api.new
33
+
34
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
35
+ # the configuration file or provide your own logger:
36
+ # dfp.logger = Logger.new('dfp_xml.log')
37
+
38
+ # Get the TeamService.
39
+ team_service = dfp.service(:TeamService, API_VERSION)
40
+
41
+ # Set the ID of the team to get.
42
+ team_id = 'INSERT_TEAM_ID_HERE'.to_i
43
+
44
+ # Get the team.
45
+ team = team_service.get_team(team_id)
46
+
47
+ if team
48
+ puts "Team with ID: %d and name '%s' was found." %
49
+ [team[:id], team[:name]]
50
+ else
51
+ puts 'No team found for this ID.'
52
+ end
53
+ end
54
+
55
+ if __FILE__ == $0
56
+ begin
57
+ get_team()
58
+
59
+ # HTTP errors.
60
+ rescue AdsCommon::Errors::HttpError => e
61
+ puts "HTTP Error: %s" % e
62
+
63
+ # API errors.
64
+ rescue DfpApi::Errors::ApiException => e
65
+ puts "Message: %s" % e.message
66
+ puts 'Errors:'
67
+ e.errors.each_with_index do |error, index|
68
+ puts "\tError [%d]:" % (index + 1)
69
+ error.each do |field, value|
70
+ puts "\t\t%s: %s" % [field, value]
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,78 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example gets all teams ordered by name. The statement retrieves up to the
22
+ # maximum page size limit of 500. To create teams, run create_teams.rb.
23
+ #
24
+ # Tags: TeamService.getTeamsByStatement
25
+
26
+ require 'dfp_api'
27
+
28
+ API_VERSION = :v201206
29
+
30
+ def get_teams_by_statement()
31
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
32
+ dfp = DfpApi::Api.new
33
+
34
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
35
+ # the configuration file or provide your own logger:
36
+ # dfp.logger = Logger.new('dfp_xml.log')
37
+
38
+ # Get the TeamService.
39
+ team_service = dfp.service(:TeamService, API_VERSION)
40
+
41
+ # Create a statement to order teams by name.
42
+ statement = {:query => "ORDER BY name LIMIT 500"}
43
+
44
+ # Get teams by statement.
45
+ page = team_service.get_teams_by_statement(statement)
46
+
47
+ if page and page[:results]
48
+ page[:results].each_with_index do |team, index|
49
+ puts "%d) Team ID: %d, name: %s." % [index, team[:id], team[:name]]
50
+ end
51
+ end
52
+
53
+ # Print a footer.
54
+ if page.include?(:total_result_set_size)
55
+ puts "Number of results found: %d" % page[:total_result_set_size]
56
+ end
57
+ end
58
+
59
+ if __FILE__ == $0
60
+ begin
61
+ get_teams_by_statement()
62
+
63
+ # HTTP errors.
64
+ rescue AdsCommon::Errors::HttpError => e
65
+ puts "HTTP Error: %s" % e
66
+
67
+ # API errors.
68
+ rescue DfpApi::Errors::ApiException => e
69
+ puts "Message: %s" % e.message
70
+ puts 'Errors:'
71
+ e.errors.each_with_index do |error, index|
72
+ puts "\tError [%d]:" % (index + 1)
73
+ error.each do |field, value|
74
+ puts "\t\t%s: %s" % [field, value]
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,95 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example updates teams by adding an ad unit to the first 5. To determine
22
+ # which teams exist, run get_all_teams.rb. To determine which ad units exist,
23
+ # run get_all_ad_units.rb.
24
+ #
25
+ # Tags: TeamService.getTeamsByStatement, TeamService.updateTeams
26
+
27
+ require 'dfp_api'
28
+
29
+ API_VERSION = :v201206
30
+
31
+ def update_teams()
32
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
33
+ dfp = DfpApi::Api.new
34
+
35
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
36
+ # the configuration file or provide your own logger:
37
+ # dfp.logger = Logger.new('dfp_xml.log')
38
+
39
+ # Set the ID of the ad unit to add to the teams.
40
+ ad_unit_id = 'INSERT_AD_UNIT_ID_HERE'.to_i
41
+
42
+ # Get the TeamService.
43
+ team_service = dfp.service(:TeamService, API_VERSION)
44
+
45
+ # Create a statement to select first 5 teams that aren't built-in.
46
+ statement = {:query => 'WHERE id > 0 LIMIT 5'}
47
+
48
+ # Get teams by statement.
49
+ page = team_service.get_teams_by_statement(statement)
50
+
51
+ if page[:results]
52
+ teams = page[:results]
53
+
54
+ # Create a local set of teams than need to be updated. We are updating by
55
+ # adding an ad unit to it.
56
+ updated_teams = teams.inject([]) do |updated_teams, team|
57
+ # Don't add ad unit if the team has all inventory already.
58
+ unless team[:has_all_inventory]
59
+ team[:ad_unit_ids] ||= []
60
+ team[:ad_unit_ids] << ad_unit_id
61
+ updated_teams << team
62
+ end
63
+ updated_teams
64
+ end
65
+
66
+ # Update the teams on the server.
67
+ return_teams = team_service.update_teams(updated_teams)
68
+ return_teams.each do |team|
69
+ puts "Team ID: %d was updated" % team[:id]
70
+ end
71
+ else
72
+ puts 'No teams found to update.'
73
+ end
74
+ end
75
+
76
+ if __FILE__ == $0
77
+ begin
78
+ update_teams()
79
+
80
+ # HTTP errors.
81
+ rescue AdsCommon::Errors::HttpError => e
82
+ puts "HTTP Error: %s" % e
83
+
84
+ # API errors.
85
+ rescue DfpApi::Errors::ApiException => e
86
+ puts "Message: %s" % e.message
87
+ puts 'Errors:'
88
+ e.errors.each_with_index do |error, index|
89
+ puts "\tError [%d]:" % (index + 1)
90
+ error.each do |field, value|
91
+ puts "\t\t%s: %s" % [field, value]
92
+ end
93
+ end
94
+ end
95
+ end