google-dfp-api 0.2.0 → 0.2.1

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 (226) hide show
  1. data/ChangeLog +7 -1
  2. data/README +11 -11
  3. data/Rakefile +13 -11
  4. data/examples/v201103/common/error_handling.rb +76 -0
  5. data/examples/v201103/company_service/create_companies.rb +82 -0
  6. data/examples/v201103/company_service/get_all_companies.rb +92 -0
  7. data/examples/v201103/company_service/get_companies_by_statement.rb +88 -0
  8. data/examples/v201103/company_service/get_company.rb +72 -0
  9. data/examples/v201103/company_service/update_companies.rb +95 -0
  10. data/examples/v201103/creative_service/copy_image_creatives.rb +117 -0
  11. data/examples/v201103/creative_service/create_creatives.rb +109 -0
  12. data/examples/v201103/creative_service/get_all_creatives.rb +93 -0
  13. data/examples/v201103/creative_service/get_creative.rb +72 -0
  14. data/examples/v201103/creative_service/get_creatives_by_statement.rb +87 -0
  15. data/examples/v201103/creative_service/update_creatives.rb +98 -0
  16. data/examples/v201103/custom_targeting_service/create_custom_targeting_keys_and_values.rb +118 -0
  17. data/examples/v201103/custom_targeting_service/delete_custom_targeting_keys.rb +121 -0
  18. data/examples/v201103/custom_targeting_service/delete_custom_targeting_values.rb +125 -0
  19. data/examples/v201103/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +148 -0
  20. data/examples/v201103/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +92 -0
  21. data/examples/v201103/custom_targeting_service/get_custom_targeting_values_by_statement.rb +98 -0
  22. data/examples/v201103/custom_targeting_service/update_custom_targeting_keys.rb +94 -0
  23. data/examples/v201103/custom_targeting_service/update_custom_targeting_values.rb +106 -0
  24. data/examples/v201103/forecast_service/get_forecast.rb +103 -0
  25. data/examples/v201103/forecast_service/get_forecast_by_id.rb +80 -0
  26. data/examples/v201103/inventory_service/create_ad_units.rb +98 -0
  27. data/examples/v201103/inventory_service/deactivate_ad_units.rb +119 -0
  28. data/examples/v201103/inventory_service/get_ad_unit.rb +72 -0
  29. data/examples/v201103/inventory_service/get_ad_units_by_statement.rb +96 -0
  30. data/examples/v201103/inventory_service/get_all_ad_units.rb +93 -0
  31. data/examples/v201103/inventory_service/update_ad_units.rb +94 -0
  32. data/examples/v201103/line_item_creative_association_service/create_licas.rb +94 -0
  33. data/examples/v201103/line_item_creative_association_service/deactivate_licas.rb +127 -0
  34. data/examples/v201103/line_item_creative_association_service/get_all_licas.rb +95 -0
  35. data/examples/v201103/line_item_creative_association_service/get_lica.rb +77 -0
  36. data/examples/v201103/line_item_creative_association_service/get_licas_by_statement.rb +91 -0
  37. data/examples/v201103/line_item_creative_association_service/update_licas.rb +92 -0
  38. data/examples/v201103/line_item_service/activate_line_items.rb +131 -0
  39. data/examples/v201103/line_item_service/create_line_items.rb +165 -0
  40. data/examples/v201103/line_item_service/get_all_line_items.rb +94 -0
  41. data/examples/v201103/line_item_service/get_line_item.rb +74 -0
  42. data/examples/v201103/line_item_service/get_line_items_by_statement.rb +89 -0
  43. data/examples/v201103/line_item_service/target_custom_criteria.rb +135 -0
  44. data/examples/v201103/line_item_service/update_line_items.rb +110 -0
  45. data/examples/v201103/network_service/get_all_networks.rb +74 -0
  46. data/examples/v201103/network_service/get_current_network.rb +66 -0
  47. data/examples/v201103/order_service/approve_orders.rb +116 -0
  48. data/examples/v201103/order_service/create_orders.rb +93 -0
  49. data/examples/v201103/order_service/get_all_orders.rb +93 -0
  50. data/examples/v201103/order_service/get_order.rb +74 -0
  51. data/examples/v201103/order_service/get_orders_by_statement.rb +90 -0
  52. data/examples/v201103/order_service/update_orders.rb +95 -0
  53. data/examples/v201103/placement_service/create_placements.rb +128 -0
  54. data/examples/v201103/placement_service/deactivate_placements.rb +118 -0
  55. data/examples/v201103/placement_service/get_all_placements.rb +93 -0
  56. data/examples/v201103/placement_service/get_placement.rb +74 -0
  57. data/examples/v201103/placement_service/get_placements_by_statement.rb +86 -0
  58. data/examples/v201103/placement_service/update_placements.rb +96 -0
  59. data/examples/v201103/publisher_query_language_service/get_all_cities.rb +85 -0
  60. data/examples/v201103/publisher_query_language_service/get_all_countries.rb +85 -0
  61. data/examples/v201103/publisher_query_language_service/get_all_metros.rb +85 -0
  62. data/examples/v201103/publisher_query_language_service/get_all_regions.rb +85 -0
  63. data/examples/v201103/report_service/download_report.rb +81 -0
  64. data/examples/v201103/report_service/run_delivery_report.rb +89 -0
  65. data/examples/v201103/report_service/run_inventory_report.rb +90 -0
  66. data/examples/v201103/report_service/run_sales_report.rb +89 -0
  67. data/examples/v201103/user_service/create_users.rb +89 -0
  68. data/examples/v201103/user_service/deactivate_users.rb +99 -0
  69. data/examples/v201103/user_service/get_all_roles.rb +73 -0
  70. data/examples/v201103/user_service/get_all_users.rb +92 -0
  71. data/examples/v201103/user_service/get_user.rb +73 -0
  72. data/examples/v201103/user_service/get_users_by_statement.rb +79 -0
  73. data/examples/v201103/user_service/update_users.rb +89 -0
  74. data/examples/v201104/common/error_handling.rb +76 -0
  75. data/examples/v201104/company_service/create_companies.rb +82 -0
  76. data/examples/v201104/company_service/get_all_companies.rb +92 -0
  77. data/examples/v201104/company_service/get_companies_by_statement.rb +88 -0
  78. data/examples/v201104/company_service/get_company.rb +72 -0
  79. data/examples/v201104/company_service/update_companies.rb +95 -0
  80. data/examples/v201104/creative_service/copy_image_creatives.rb +117 -0
  81. data/examples/v201104/creative_service/create_creatives.rb +109 -0
  82. data/examples/v201104/creative_service/get_all_creatives.rb +93 -0
  83. data/examples/v201104/creative_service/get_creative.rb +72 -0
  84. data/examples/v201104/creative_service/get_creatives_by_statement.rb +87 -0
  85. data/examples/v201104/creative_service/update_creatives.rb +98 -0
  86. data/examples/v201104/custom_targeting_service/create_custom_targeting_keys_and_values.rb +118 -0
  87. data/examples/v201104/custom_targeting_service/delete_custom_targeting_keys.rb +121 -0
  88. data/examples/v201104/custom_targeting_service/delete_custom_targeting_values.rb +125 -0
  89. data/examples/v201104/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +148 -0
  90. data/examples/v201104/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +92 -0
  91. data/examples/v201104/custom_targeting_service/get_custom_targeting_values_by_statement.rb +98 -0
  92. data/examples/v201104/custom_targeting_service/update_custom_targeting_keys.rb +94 -0
  93. data/examples/v201104/custom_targeting_service/update_custom_targeting_values.rb +106 -0
  94. data/examples/v201104/forecast_service/get_forecast.rb +103 -0
  95. data/examples/v201104/forecast_service/get_forecast_by_id.rb +80 -0
  96. data/examples/v201104/inventory_service/create_ad_units.rb +98 -0
  97. data/examples/v201104/inventory_service/deactivate_ad_units.rb +119 -0
  98. data/examples/v201104/inventory_service/get_ad_unit.rb +72 -0
  99. data/examples/v201104/inventory_service/get_ad_units_by_statement.rb +96 -0
  100. data/examples/v201104/inventory_service/get_all_ad_units.rb +93 -0
  101. data/examples/v201104/inventory_service/update_ad_units.rb +94 -0
  102. data/examples/v201104/line_item_creative_association_service/create_licas.rb +94 -0
  103. data/examples/v201104/line_item_creative_association_service/deactivate_licas.rb +127 -0
  104. data/examples/v201104/line_item_creative_association_service/get_all_licas.rb +95 -0
  105. data/examples/v201104/line_item_creative_association_service/get_lica.rb +77 -0
  106. data/examples/v201104/line_item_creative_association_service/get_licas_by_statement.rb +91 -0
  107. data/examples/v201104/line_item_creative_association_service/update_licas.rb +92 -0
  108. data/examples/v201104/line_item_service/activate_line_items.rb +131 -0
  109. data/examples/v201104/line_item_service/create_line_items.rb +157 -0
  110. data/examples/v201104/line_item_service/get_all_line_items.rb +94 -0
  111. data/examples/v201104/line_item_service/get_line_item.rb +74 -0
  112. data/examples/v201104/line_item_service/get_line_items_by_statement.rb +89 -0
  113. data/examples/v201104/line_item_service/target_custom_criteria.rb +129 -0
  114. data/examples/v201104/line_item_service/update_line_items.rb +110 -0
  115. data/examples/v201104/network_service/get_all_networks.rb +74 -0
  116. data/examples/v201104/network_service/get_current_network.rb +66 -0
  117. data/examples/v201104/order_service/approve_orders.rb +116 -0
  118. data/examples/v201104/order_service/create_orders.rb +93 -0
  119. data/examples/v201104/order_service/get_all_orders.rb +93 -0
  120. data/examples/v201104/order_service/get_order.rb +74 -0
  121. data/examples/v201104/order_service/get_orders_by_statement.rb +90 -0
  122. data/examples/v201104/order_service/update_orders.rb +95 -0
  123. data/examples/v201104/placement_service/create_placements.rb +128 -0
  124. data/examples/v201104/placement_service/deactivate_placements.rb +118 -0
  125. data/examples/v201104/placement_service/get_all_placements.rb +93 -0
  126. data/examples/v201104/placement_service/get_placement.rb +74 -0
  127. data/examples/v201104/placement_service/get_placements_by_statement.rb +86 -0
  128. data/examples/v201104/placement_service/update_placements.rb +96 -0
  129. data/examples/v201104/publisher_query_language_service/get_all_cities.rb +85 -0
  130. data/examples/v201104/publisher_query_language_service/get_all_countries.rb +85 -0
  131. data/examples/v201104/publisher_query_language_service/get_all_metros.rb +85 -0
  132. data/examples/v201104/publisher_query_language_service/get_all_regions.rb +85 -0
  133. data/examples/v201104/report_service/download_report.rb +81 -0
  134. data/examples/v201104/report_service/run_delivery_report.rb +89 -0
  135. data/examples/v201104/report_service/run_inventory_report.rb +90 -0
  136. data/examples/v201104/report_service/run_sales_report.rb +89 -0
  137. data/examples/v201104/user_service/create_users.rb +89 -0
  138. data/examples/v201104/user_service/deactivate_users.rb +99 -0
  139. data/examples/v201104/user_service/get_all_roles.rb +73 -0
  140. data/examples/v201104/user_service/get_all_users.rb +92 -0
  141. data/examples/v201104/user_service/get_user.rb +73 -0
  142. data/examples/v201104/user_service/get_users_by_statement.rb +79 -0
  143. data/examples/v201104/user_service/update_users.rb +89 -0
  144. data/lib/dfp_api.rb +32 -45
  145. data/lib/dfp_api/api_config.rb +30 -7
  146. data/lib/dfp_api/v201101/company_service.rb +9 -9
  147. data/lib/dfp_api/v201101/company_service_registry.rb +3 -3
  148. data/lib/dfp_api/v201101/creative_service.rb +9 -9
  149. data/lib/dfp_api/v201101/creative_service_registry.rb +3 -3
  150. data/lib/dfp_api/v201101/custom_targeting_service.rb +9 -9
  151. data/lib/dfp_api/v201101/custom_targeting_service_registry.rb +3 -3
  152. data/lib/dfp_api/v201101/forecast_service.rb +5 -5
  153. data/lib/dfp_api/v201101/forecast_service_registry.rb +3 -3
  154. data/lib/dfp_api/v201101/inventory_service.rb +13 -13
  155. data/lib/dfp_api/v201101/inventory_service_registry.rb +3 -3
  156. data/lib/dfp_api/v201101/line_item_creative_association_service.rb +5 -5
  157. data/lib/dfp_api/v201101/line_item_creative_association_service_registry.rb +3 -3
  158. data/lib/dfp_api/v201101/line_item_service.rb +13 -13
  159. data/lib/dfp_api/v201101/line_item_service_registry.rb +3 -3
  160. data/lib/dfp_api/v201101/network_service.rb +5 -5
  161. data/lib/dfp_api/v201101/network_service_registry.rb +3 -3
  162. data/lib/dfp_api/v201101/order_service.rb +13 -13
  163. data/lib/dfp_api/v201101/order_service_registry.rb +3 -3
  164. data/lib/dfp_api/v201101/placement_service.rb +9 -9
  165. data/lib/dfp_api/v201101/placement_service_registry.rb +3 -3
  166. data/lib/dfp_api/v201101/publisher_query_language_service.rb +1 -1
  167. data/lib/dfp_api/v201101/publisher_query_language_service_registry.rb +3 -3
  168. data/lib/dfp_api/v201101/report_service.rb +5 -5
  169. data/lib/dfp_api/v201101/report_service_registry.rb +3 -3
  170. data/lib/dfp_api/v201101/user_service.rb +17 -17
  171. data/lib/dfp_api/v201101/user_service_registry.rb +3 -3
  172. data/lib/dfp_api/v201103/company_service.rb +52 -0
  173. data/lib/dfp_api/v201103/company_service_registry.rb +37 -0
  174. data/lib/dfp_api/v201103/creative_service.rb +52 -0
  175. data/lib/dfp_api/v201103/creative_service_registry.rb +37 -0
  176. data/lib/dfp_api/v201103/custom_targeting_service.rb +60 -0
  177. data/lib/dfp_api/v201103/custom_targeting_service_registry.rb +37 -0
  178. data/lib/dfp_api/v201103/forecast_service.rb +36 -0
  179. data/lib/dfp_api/v201103/forecast_service_registry.rb +37 -0
  180. data/lib/dfp_api/v201103/inventory_service.rb +56 -0
  181. data/lib/dfp_api/v201103/inventory_service_registry.rb +37 -0
  182. data/lib/dfp_api/v201103/line_item_creative_association_service.rb +56 -0
  183. data/lib/dfp_api/v201103/line_item_creative_association_service_registry.rb +37 -0
  184. data/lib/dfp_api/v201103/line_item_service.rb +56 -0
  185. data/lib/dfp_api/v201103/line_item_service_registry.rb +37 -0
  186. data/lib/dfp_api/v201103/network_service.rb +40 -0
  187. data/lib/dfp_api/v201103/network_service_registry.rb +37 -0
  188. data/lib/dfp_api/v201103/order_service.rb +56 -0
  189. data/lib/dfp_api/v201103/order_service_registry.rb +37 -0
  190. data/lib/dfp_api/v201103/placement_service.rb +56 -0
  191. data/lib/dfp_api/v201103/placement_service_registry.rb +37 -0
  192. data/lib/dfp_api/v201103/publisher_query_language_service.rb +32 -0
  193. data/lib/dfp_api/v201103/publisher_query_language_service_registry.rb +37 -0
  194. data/lib/dfp_api/v201103/report_service.rb +40 -0
  195. data/lib/dfp_api/v201103/report_service_registry.rb +37 -0
  196. data/lib/dfp_api/v201103/user_service.rb +60 -0
  197. data/lib/dfp_api/v201103/user_service_registry.rb +37 -0
  198. data/lib/dfp_api/v201104/company_service.rb +52 -0
  199. data/lib/dfp_api/v201104/company_service_registry.rb +37 -0
  200. data/lib/dfp_api/v201104/creative_service.rb +52 -0
  201. data/lib/dfp_api/v201104/creative_service_registry.rb +37 -0
  202. data/lib/dfp_api/v201104/custom_targeting_service.rb +60 -0
  203. data/lib/dfp_api/v201104/custom_targeting_service_registry.rb +37 -0
  204. data/lib/dfp_api/v201104/forecast_service.rb +36 -0
  205. data/lib/dfp_api/v201104/forecast_service_registry.rb +37 -0
  206. data/lib/dfp_api/v201104/inventory_service.rb +56 -0
  207. data/lib/dfp_api/v201104/inventory_service_registry.rb +37 -0
  208. data/lib/dfp_api/v201104/line_item_creative_association_service.rb +56 -0
  209. data/lib/dfp_api/v201104/line_item_creative_association_service_registry.rb +37 -0
  210. data/lib/dfp_api/v201104/line_item_service.rb +56 -0
  211. data/lib/dfp_api/v201104/line_item_service_registry.rb +37 -0
  212. data/lib/dfp_api/v201104/network_service.rb +40 -0
  213. data/lib/dfp_api/v201104/network_service_registry.rb +37 -0
  214. data/lib/dfp_api/v201104/order_service.rb +56 -0
  215. data/lib/dfp_api/v201104/order_service_registry.rb +37 -0
  216. data/lib/dfp_api/v201104/placement_service.rb +56 -0
  217. data/lib/dfp_api/v201104/placement_service_registry.rb +37 -0
  218. data/lib/dfp_api/v201104/publisher_query_language_service.rb +32 -0
  219. data/lib/dfp_api/v201104/publisher_query_language_service_registry.rb +37 -0
  220. data/lib/dfp_api/v201104/report_service.rb +40 -0
  221. data/lib/dfp_api/v201104/report_service_registry.rb +37 -0
  222. data/lib/dfp_api/v201104/user_service.rb +60 -0
  223. data/lib/dfp_api/v201104/user_service_registry.rb +37 -0
  224. data/test/bugs/test_issue_00000016.rb +154 -0
  225. data/test/dfp_api/test_dfp_api.rb +64 -0
  226. metadata +248 -53
@@ -0,0 +1,37 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:06.
7
+
8
+ module DfpApi; module V201104; module OrderService
9
+ class OrderServiceRegistry
10
+ ORDERSERVICE_METHODS = {:create_orders=>{:input=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>nil, :name=>:orders}], :output=>{:fields=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>nil, :name=>:rval}], :name=>"create_orders_response"}}, :get_order=>{:input=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:order_id}], :output=>{:fields=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_order_response"}}, :get_orders_by_statement=>{:input=>[{:type=>"Statement", :min_occurs=>0, :max_occurs=>1, :name=>:filter_statement}], :output=>{:fields=>[{:type=>"OrderPage", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_orders_by_statement_response"}}, :perform_order_action=>{:input=>[{:type=>"OrderAction", :min_occurs=>0, :max_occurs=>1, :name=>:order_action}, {:type=>"Statement", :min_occurs=>0, :max_occurs=>1, :name=>:filter_statement}], :output=>{:fields=>[{:type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"perform_order_action_response"}}, :update_order=>{:input=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>1, :name=>:order}], :output=>{:fields=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"update_order_response"}}, :create_order=>{:input=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>1, :name=>:order}], :output=>{:fields=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"create_order_response"}}, :update_orders=>{:input=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>nil, :name=>:orders}], :output=>{:fields=>[{:type=>"Order", :min_occurs=>0, :max_occurs=>nil, :name=>:rval}], :name=>"update_orders_response"}}}
11
+ ORDERSERVICE_TYPES = {:Statement=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:query}, {:type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>nil, :name=>:values}]}, :Money=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:currency_code}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:micro_amount}]}, :UpdateResult=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:num_changes}]}, :ResumeAndOverbookOrders=>{:fields=>[], :base=>"ResumeOrders"}, :ApproveAndOverbookOrders=>{:fields=>[], :base=>"ApproveOrders"}, :String_ValueMapEntry=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:key}, {:type=>"Value", :min_occurs=>0, :max_occurs=>1, :name=>:value}]}, :NumberValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :ResumeOrders=>{:fields=>[], :base=>"OrderAction"}, :ApproveOrders=>{:fields=>[], :base=>"OrderAction"}, :SubmitOrdersForApproval=>{:fields=>[], :base=>"OrderAction"}, :OrderAction=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:order_action_type}], :abstract=>true}, :OAuth=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:parameters}], :base=>"Authentication"}, :Value=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value_type}], :abstract=>true}, :RetractOrders=>{:fields=>[], :base=>"OrderAction"}, :Authentication=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:authentication_type}], :abstract=>true}, :ArchiveOrders=>{:fields=>[], :base=>"OrderAction"}, :SubmitOrdersForApprovalAndOverbook=>{:fields=>[], :base=>"SubmitOrdersForApproval"}, :Order=>{:fields=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:id}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:name}, {:type=>"DateTime", :min_occurs=>0, :max_occurs=>1, :name=>:start_date_time}, {:type=>"DateTime", :min_occurs=>0, :max_occurs=>1, :name=>:end_date_time}, {:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:unlimited_end_date_time}, {:type=>"OrderStatus", :min_occurs=>0, :max_occurs=>1, :name=>:status}, {:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:is_archived}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:notes}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:external_id}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:currency_code}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:advertiser_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:agency_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:creator_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:trafficker_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:salesperson_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:total_impressions_delivered}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:total_clicks_delivered}, {:type=>"Money", :min_occurs=>0, :max_occurs=>1, :name=>:total_budget}]}, :Date=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:year}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:month}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:day}]}, :SoapRequestHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:network_code}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:application_name}, {:type=>"Authentication", :min_occurs=>0, :max_occurs=>1, :name=>:authentication}]}, :ClientLogin=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:token}], :base=>"Authentication"}, :BooleanValue=>{:fields=>[{:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :TextValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :OrderPage=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:total_result_set_size}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:start_index}, {:type=>"Order", :min_occurs=>0, :max_occurs=>nil, :name=>:results}]}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:request_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:response_time}]}, :DisapproveOrders=>{:fields=>[], :base=>"OrderAction"}, :DateTime=>{:fields=>[{:type=>"Date", :min_occurs=>0, :max_occurs=>1, :name=>:date}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:hour}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:minute}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:second}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:time_zone_id}]}, :UnarchiveOrders=>{:fields=>[], :base=>"OrderAction"}, :PauseOrders=>{:fields=>[], :base=>"OrderAction"}}
12
+
13
+ def self.get_method_signature(method_name)
14
+ return ORDERSERVICE_METHODS[method_name.to_sym]
15
+ end
16
+
17
+ def self.get_type_signature(type_name)
18
+ return ORDERSERVICE_TYPES[type_name.to_sym]
19
+ end
20
+ end
21
+
22
+ # Base class for exceptions.
23
+ class ApplicationException < DfpApi::Errors::ApiException
24
+ attr_reader :message # string
25
+ attr_reader :application_exception_type # string
26
+ end
27
+
28
+ # Exception class for holding a list of service errors.
29
+ class ApiException < ApplicationException
30
+ attr_reader :errors # ApiError
31
+ def initialize(exception_fault)
32
+ @array_fields = [] if !defined?(@array_fields)
33
+ @array_fields << 'errors'
34
+ super(exception_fault)
35
+ end
36
+ end
37
+ end; end; end
@@ -0,0 +1,56 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:33.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'dfp_api/v201104/placement_service_registry'
10
+
11
+ module DfpApi; module V201104; module PlacementService
12
+ class PlacementService < AdsCommon::SavonService
13
+ def initialize(endpoint)
14
+ namespace = 'https://www.google.com/apis/ads/publisher/v201104'
15
+ super(endpoint, namespace)
16
+ end
17
+
18
+ def perform_placement_action(*args)
19
+ return execute_action('perform_placement_action', args)
20
+ end
21
+
22
+ def update_placement(*args)
23
+ return execute_action('update_placement', args)
24
+ end
25
+
26
+ def create_placement(*args)
27
+ return execute_action('create_placement', args)
28
+ end
29
+
30
+ def update_placements(*args)
31
+ return execute_action('update_placements', args)
32
+ end
33
+
34
+ def create_placements(*args)
35
+ return execute_action('create_placements', args)
36
+ end
37
+
38
+ def get_placement(*args)
39
+ return execute_action('get_placement', args)
40
+ end
41
+
42
+ def get_placements_by_statement(*args)
43
+ return execute_action('get_placements_by_statement', args)
44
+ end
45
+
46
+ private
47
+
48
+ def get_service_registry()
49
+ return PlacementServiceRegistry
50
+ end
51
+
52
+ def get_module()
53
+ return DfpApi::V201104::PlacementService
54
+ end
55
+ end
56
+ end; end; end
@@ -0,0 +1,37 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:33.
7
+
8
+ module DfpApi; module V201104; module PlacementService
9
+ class PlacementServiceRegistry
10
+ PLACEMENTSERVICE_METHODS = {:perform_placement_action=>{:input=>[{:type=>"PlacementAction", :min_occurs=>0, :max_occurs=>1, :name=>:placement_action}, {:type=>"Statement", :min_occurs=>0, :max_occurs=>1, :name=>:filter_statement}], :output=>{:fields=>[{:type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"perform_placement_action_response"}}, :update_placement=>{:input=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>1, :name=>:placement}], :output=>{:fields=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"update_placement_response"}}, :create_placement=>{:input=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>1, :name=>:placement}], :output=>{:fields=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"create_placement_response"}}, :update_placements=>{:input=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>nil, :name=>:placements}], :output=>{:fields=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>nil, :name=>:rval}], :name=>"update_placements_response"}}, :create_placements=>{:input=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>nil, :name=>:placements}], :output=>{:fields=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>nil, :name=>:rval}], :name=>"create_placements_response"}}, :get_placement=>{:input=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:placement_id}], :output=>{:fields=>[{:type=>"Placement", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_placement_response"}}, :get_placements_by_statement=>{:input=>[{:type=>"Statement", :min_occurs=>0, :max_occurs=>1, :name=>:filter_statement}], :output=>{:fields=>[{:type=>"PlacementPage", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_placements_by_statement_response"}}}
11
+ PLACEMENTSERVICE_TYPES = {:Statement=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:query}, {:type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>nil, :name=>:values}]}, :ArchivePlacements=>{:fields=>[], :base=>"PlacementAction"}, :UpdateResult=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:num_changes}]}, :String_ValueMapEntry=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:key}, {:type=>"Value", :min_occurs=>0, :max_occurs=>1, :name=>:value}]}, :NumberValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :DeactivatePlacements=>{:fields=>[], :base=>"PlacementAction"}, :PlacementAction=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:placement_action_type}], :abstract=>true}, :OAuth=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:parameters}], :base=>"Authentication"}, :Authentication=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:authentication_type}], :abstract=>true}, :Value=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value_type}], :abstract=>true}, :Placement=>{:fields=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:id}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:name}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:description}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:placement_code}, {:type=>"InventoryStatus", :min_occurs=>0, :max_occurs=>1, :name=>:status}, {:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:is_ad_sense_targeting_enabled}, {:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:is_ad_planner_targeting_enabled}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:ad_sense_targeting_locale}, {:type=>"string", :min_occurs=>0, :max_occurs=>nil, :name=>:targeted_ad_unit_ids}], :base=>"SiteTargetingInfo"}, :SoapRequestHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:network_code}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:application_name}, {:type=>"Authentication", :min_occurs=>0, :max_occurs=>1, :name=>:authentication}]}, :ClientLogin=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:token}], :base=>"Authentication"}, :BooleanValue=>{:fields=>[{:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :SiteTargetingInfo=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:targeting_description}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:targeting_site_name}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:targeting_ad_location}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:site_targeting_info_type}]}, :TextValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:request_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:response_time}]}, :ActivatePlacements=>{:fields=>[], :base=>"PlacementAction"}, :PlacementPage=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:total_result_set_size}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:start_index}, {:type=>"Placement", :min_occurs=>0, :max_occurs=>nil, :name=>:results}]}}
12
+
13
+ def self.get_method_signature(method_name)
14
+ return PLACEMENTSERVICE_METHODS[method_name.to_sym]
15
+ end
16
+
17
+ def self.get_type_signature(type_name)
18
+ return PLACEMENTSERVICE_TYPES[type_name.to_sym]
19
+ end
20
+ end
21
+
22
+ # Base class for exceptions.
23
+ class ApplicationException < DfpApi::Errors::ApiException
24
+ attr_reader :message # string
25
+ attr_reader :application_exception_type # string
26
+ end
27
+
28
+ # Exception class for holding a list of service errors.
29
+ class ApiException < ApplicationException
30
+ attr_reader :errors # ApiError
31
+ def initialize(exception_fault)
32
+ @array_fields = [] if !defined?(@array_fields)
33
+ @array_fields << 'errors'
34
+ super(exception_fault)
35
+ end
36
+ end
37
+ end; end; end
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:36.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'dfp_api/v201104/publisher_query_language_service_registry'
10
+
11
+ module DfpApi; module V201104; module PublisherQueryLanguageService
12
+ class PublisherQueryLanguageService < AdsCommon::SavonService
13
+ def initialize(endpoint)
14
+ namespace = 'https://www.google.com/apis/ads/publisher/v201104'
15
+ super(endpoint, namespace)
16
+ end
17
+
18
+ def select(*args)
19
+ return execute_action('select', args)
20
+ end
21
+
22
+ private
23
+
24
+ def get_service_registry()
25
+ return PublisherQueryLanguageServiceRegistry
26
+ end
27
+
28
+ def get_module()
29
+ return DfpApi::V201104::PublisherQueryLanguageService
30
+ end
31
+ end
32
+ end; end; end
@@ -0,0 +1,37 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:36.
7
+
8
+ module DfpApi; module V201104; module PublisherQueryLanguageService
9
+ class PublisherQueryLanguageServiceRegistry
10
+ PUBLISHERQUERYLANGUAGESERVICE_METHODS = {:select=>{:input=>[{:type=>"Statement", :min_occurs=>0, :max_occurs=>1, :name=>:select_statement}], :output=>{:fields=>[{:type=>"ResultSet", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"select_response"}}}
11
+ PUBLISHERQUERYLANGUAGESERVICE_TYPES = {:Statement=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:query}, {:type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>nil, :name=>:values}]}, :ResultSet=>{:fields=>[{:type=>"ColumnType", :min_occurs=>0, :max_occurs=>nil, :name=>:column_types}, {:type=>"Row", :min_occurs=>0, :max_occurs=>nil, :name=>:rows}]}, :String_ValueMapEntry=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:key}, {:type=>"Value", :min_occurs=>0, :max_occurs=>1, :name=>:value}]}, :NumberValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :OAuth=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:parameters}], :base=>"Authentication"}, :Authentication=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:authentication_type}], :abstract=>true}, :Value=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value_type}], :abstract=>true}, :SoapRequestHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:network_code}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:application_name}, {:type=>"Authentication", :min_occurs=>0, :max_occurs=>1, :name=>:authentication}]}, :ColumnType=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:label_name}]}, :ClientLogin=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:token}], :base=>"Authentication"}, :BooleanValue=>{:fields=>[{:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :TextValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :Row=>{:fields=>[{:type=>"Value", :min_occurs=>0, :max_occurs=>nil, :name=>:values}]}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:request_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:response_time}]}}
12
+
13
+ def self.get_method_signature(method_name)
14
+ return PUBLISHERQUERYLANGUAGESERVICE_METHODS[method_name.to_sym]
15
+ end
16
+
17
+ def self.get_type_signature(type_name)
18
+ return PUBLISHERQUERYLANGUAGESERVICE_TYPES[type_name.to_sym]
19
+ end
20
+ end
21
+
22
+ # Base class for exceptions.
23
+ class ApplicationException < DfpApi::Errors::ApiException
24
+ attr_reader :message # string
25
+ attr_reader :application_exception_type # string
26
+ end
27
+
28
+ # Exception class for holding a list of service errors.
29
+ class ApiException < ApplicationException
30
+ attr_reader :errors # ApiError
31
+ def initialize(exception_fault)
32
+ @array_fields = [] if !defined?(@array_fields)
33
+ @array_fields << 'errors'
34
+ super(exception_fault)
35
+ end
36
+ end
37
+ end; end; end
@@ -0,0 +1,40 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:19.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'dfp_api/v201104/report_service_registry'
10
+
11
+ module DfpApi; module V201104; module ReportService
12
+ class ReportService < AdsCommon::SavonService
13
+ def initialize(endpoint)
14
+ namespace = 'https://www.google.com/apis/ads/publisher/v201104'
15
+ super(endpoint, namespace)
16
+ end
17
+
18
+ def get_report_download_url(*args)
19
+ return execute_action('get_report_download_url', args)
20
+ end
21
+
22
+ def get_report_job(*args)
23
+ return execute_action('get_report_job', args)
24
+ end
25
+
26
+ def run_report_job(*args)
27
+ return execute_action('run_report_job', args)
28
+ end
29
+
30
+ private
31
+
32
+ def get_service_registry()
33
+ return ReportServiceRegistry
34
+ end
35
+
36
+ def get_module()
37
+ return DfpApi::V201104::ReportService
38
+ end
39
+ end
40
+ end; end; end
@@ -0,0 +1,37 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:19.
7
+
8
+ module DfpApi; module V201104; module ReportService
9
+ class ReportServiceRegistry
10
+ REPORTSERVICE_METHODS = {:get_report_download_url=>{:original_name=>"getReportDownloadURL", :input=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:report_job_id}, {:type=>"ExportFormat", :min_occurs=>0, :max_occurs=>1, :name=>:export_format}], :output=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_report_download_url_response"}}, :get_report_job=>{:input=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:report_job_id}], :output=>{:fields=>[{:type=>"ReportJob", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_report_job_response"}}, :run_report_job=>{:input=>[{:type=>"ReportJob", :min_occurs=>0, :max_occurs=>1, :name=>:report_job}], :output=>{:fields=>[{:type=>"ReportJob", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"run_report_job_response"}}}
11
+ REPORTSERVICE_TYPES = {:OAuth=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:parameters}], :base=>"Authentication"}, :Authentication=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:authentication_type}], :abstract=>true}, :ReportQuery=>{:fields=>[{:type=>"Dimension", :min_occurs=>0, :max_occurs=>nil, :name=>:dimensions}, {:type=>"Column", :min_occurs=>0, :max_occurs=>nil, :name=>:columns}, {:type=>"Date", :min_occurs=>0, :max_occurs=>1, :name=>:start_date}, {:type=>"Date", :min_occurs=>0, :max_occurs=>1, :name=>:end_date}, {:type=>"DateRangeType", :min_occurs=>0, :max_occurs=>1, :name=>:date_range_type}, {:type=>"DimensionFilter", :min_occurs=>0, :max_occurs=>nil, :name=>:dimension_filters}]}, :Date=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:year}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:month}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:day}]}, :SoapRequestHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:network_code}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:application_name}, {:type=>"Authentication", :min_occurs=>0, :max_occurs=>1, :name=>:authentication}]}, :ClientLogin=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:token}], :base=>"Authentication"}, :ReportJob=>{:fields=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:id}, {:type=>"ReportQuery", :min_occurs=>0, :max_occurs=>1, :name=>:report_query}, {:type=>"ReportJobStatus", :min_occurs=>0, :max_occurs=>1, :name=>:report_job_status}]}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:request_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:response_time}]}}
12
+
13
+ def self.get_method_signature(method_name)
14
+ return REPORTSERVICE_METHODS[method_name.to_sym]
15
+ end
16
+
17
+ def self.get_type_signature(type_name)
18
+ return REPORTSERVICE_TYPES[type_name.to_sym]
19
+ end
20
+ end
21
+
22
+ # Base class for exceptions.
23
+ class ApplicationException < DfpApi::Errors::ApiException
24
+ attr_reader :message # string
25
+ attr_reader :application_exception_type # string
26
+ end
27
+
28
+ # Exception class for holding a list of service errors.
29
+ class ApiException < ApplicationException
30
+ attr_reader :errors # ApiError
31
+ def initialize(exception_fault)
32
+ @array_fields = [] if !defined?(@array_fields)
33
+ @array_fields << 'errors'
34
+ super(exception_fault)
35
+ end
36
+ end
37
+ end; end; end
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:14.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'dfp_api/v201104/user_service_registry'
10
+
11
+ module DfpApi; module V201104; module UserService
12
+ class UserService < AdsCommon::SavonService
13
+ def initialize(endpoint)
14
+ namespace = 'https://www.google.com/apis/ads/publisher/v201104'
15
+ super(endpoint, namespace)
16
+ end
17
+
18
+ def update_users(*args)
19
+ return execute_action('update_users', args)
20
+ end
21
+
22
+ def get_all_roles(*args)
23
+ return execute_action('get_all_roles', args)
24
+ end
25
+
26
+ def get_user(*args)
27
+ return execute_action('get_user', args)
28
+ end
29
+
30
+ def get_users_by_statement(*args)
31
+ return execute_action('get_users_by_statement', args)
32
+ end
33
+
34
+ def perform_user_action(*args)
35
+ return execute_action('perform_user_action', args)
36
+ end
37
+
38
+ def create_user(*args)
39
+ return execute_action('create_user', args)
40
+ end
41
+
42
+ def update_user(*args)
43
+ return execute_action('update_user', args)
44
+ end
45
+
46
+ def create_users(*args)
47
+ return execute_action('create_users', args)
48
+ end
49
+
50
+ private
51
+
52
+ def get_service_registry()
53
+ return UserServiceRegistry
54
+ end
55
+
56
+ def get_module()
57
+ return DfpApi::V201104::UserService
58
+ end
59
+ end
60
+ end; end; end
@@ -0,0 +1,37 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.4.0 on 2011-06-17 15:27:14.
7
+
8
+ module DfpApi; module V201104; module UserService
9
+ class UserServiceRegistry
10
+ USERSERVICE_METHODS = {:update_users=>{:input=>[{:type=>"User", :min_occurs=>0, :max_occurs=>nil, :name=>:users}], :output=>{:fields=>[{:type=>"User", :min_occurs=>0, :max_occurs=>nil, :name=>:rval}], :name=>"update_users_response"}}, :get_all_roles=>{:input=>[], :output=>{:fields=>[{:type=>"Role", :min_occurs=>0, :max_occurs=>nil, :name=>:rval}], :name=>"get_all_roles_response"}}, :get_user=>{:input=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:user_id}], :output=>{:fields=>[{:type=>"User", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_user_response"}}, :get_users_by_statement=>{:input=>[{:type=>"Statement", :min_occurs=>0, :max_occurs=>1, :name=>:filter_statement}], :output=>{:fields=>[{:type=>"UserPage", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"get_users_by_statement_response"}}, :perform_user_action=>{:input=>[{:type=>"UserAction", :min_occurs=>0, :max_occurs=>1, :name=>:user_action}, {:type=>"Statement", :min_occurs=>0, :max_occurs=>1, :name=>:filter_statement}], :output=>{:fields=>[{:type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"perform_user_action_response"}}, :create_user=>{:input=>[{:type=>"User", :min_occurs=>0, :max_occurs=>1, :name=>:user}], :output=>{:fields=>[{:type=>"User", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"create_user_response"}}, :update_user=>{:input=>[{:type=>"User", :min_occurs=>0, :max_occurs=>1, :name=>:user}], :output=>{:fields=>[{:type=>"User", :min_occurs=>0, :max_occurs=>1, :name=>:rval}], :name=>"update_user_response"}}, :create_users=>{:input=>[{:type=>"User", :min_occurs=>0, :max_occurs=>nil, :name=>:users}], :output=>{:fields=>[{:type=>"User", :min_occurs=>0, :max_occurs=>nil, :name=>:rval}], :name=>"create_users_response"}}}
11
+ USERSERVICE_TYPES = {:Statement=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:query}, {:type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>nil, :name=>:values}]}, :UserRecord=>{:fields=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:id}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:name}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:email}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:role_id}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:role_name}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:preferred_locale}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:user_record_type}]}, :UpdateResult=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:num_changes}]}, :ActivateUsers=>{:fields=>[], :base=>"UserAction"}, :UserPage=>{:fields=>[{:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:total_result_set_size}, {:type=>"int", :min_occurs=>0, :max_occurs=>1, :name=>:start_index}, {:type=>"User", :min_occurs=>0, :max_occurs=>nil, :name=>:results}]}, :String_ValueMapEntry=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:key}, {:type=>"Value", :min_occurs=>0, :max_occurs=>1, :name=>:value}]}, :NumberValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :DeactivateUsers=>{:fields=>[], :base=>"UserAction"}, :OAuth=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:parameters}], :base=>"Authentication"}, :Authentication=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:authentication_type}], :abstract=>true}, :Value=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value_type}], :abstract=>true}, :Role=>{:fields=>[{:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:id}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:name}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:description}]}, :SoapRequestHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:network_code}, {:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:application_name}, {:type=>"Authentication", :min_occurs=>0, :max_occurs=>1, :name=>:authentication}]}, :UserAction=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:user_action_type}], :abstract=>true}, :ClientLogin=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:token}], :base=>"Authentication"}, :BooleanValue=>{:fields=>[{:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :TextValue=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:value}], :base=>"Value"}, :User=>{:fields=>[{:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:is_active}, {:type=>"boolean", :min_occurs=>0, :max_occurs=>1, :name=>:is_email_notification_allowed}], :base=>"UserRecord"}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :min_occurs=>0, :max_occurs=>1, :name=>:request_id}, {:type=>"long", :min_occurs=>0, :max_occurs=>1, :name=>:response_time}]}}
12
+
13
+ def self.get_method_signature(method_name)
14
+ return USERSERVICE_METHODS[method_name.to_sym]
15
+ end
16
+
17
+ def self.get_type_signature(type_name)
18
+ return USERSERVICE_TYPES[type_name.to_sym]
19
+ end
20
+ end
21
+
22
+ # Base class for exceptions.
23
+ class ApplicationException < DfpApi::Errors::ApiException
24
+ attr_reader :message # string
25
+ attr_reader :application_exception_type # string
26
+ end
27
+
28
+ # Exception class for holding a list of service errors.
29
+ class ApiException < ApplicationException
30
+ attr_reader :errors # ApiError
31
+ def initialize(exception_fault)
32
+ @array_fields = [] if !defined?(@array_fields)
33
+ @array_fields << 'errors'
34
+ super(exception_fault)
35
+ end
36
+ end
37
+ end; end; end
@@ -0,0 +1,154 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
4
+ #
5
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
6
+ #
7
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16
+ # implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+ # Tests issue #16.
21
+
22
+ require 'rubygems'
23
+ require 'test/unit'
24
+ require 'dfp_api/errors'
25
+ require 'dfp_api/v201104/line_item_service'
26
+ require 'savon'
27
+
28
+ class TestDfpApi < Test::Unit::TestCase
29
+ class StubService < DfpApi::V201104::LineItemService::LineItemService
30
+ def stub_get_line_items_by_statement(xml_text)
31
+ data = Savon::SOAP::XML.to_hash(xml_text)
32
+ return extract_result(data, 'get_line_items_by_statement')
33
+ end
34
+ end
35
+
36
+ def test_issue_16
37
+ assert_nothing_raised do
38
+ service = StubService.new(
39
+ 'https://www.google.com/apis/ads/publisher/v201101/LineItemService')
40
+ result = service.stub_get_line_items_by_statement(get_xml_text)
41
+ targeting = result[:results][0][:targeting][:inventory_targeting]
42
+ assert_equal([1234567, 23456], targeting[:targeted_placement_ids])
43
+ end
44
+ end
45
+
46
+ def get_xml_text
47
+ return <<EOT
48
+ <?xml version="1.0"?>
49
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
50
+ <soap:Header>
51
+ <ResponseHeader xmlns="https://www.google.com/apis/ads/publisher/v201101">
52
+ <requestId>dac42656454</requestId>
53
+ <responseTime>9</responseTime>
54
+ </ResponseHeader>
55
+ </soap:Header>
56
+ <soap:Body>
57
+ <getLineItemsByStatementResponse
58
+ xmlns="https://www.google.com/apis/ads/publisher/v201101">
59
+ <rval>
60
+ <totalResultSetSize>1</totalResultSetSize>
61
+ <startIndex>0</startIndex>
62
+ <results>
63
+ <orderId>345678</orderId>
64
+ <id>89012</id>
65
+ <name>some name</name>
66
+ <orderName>someOrderName</orderName>
67
+ <startDateTime>
68
+ <date>
69
+ <year>2011</year>
70
+ <month>1</month>
71
+ <day>1</day>
72
+ </date>
73
+ <hour>0</hour>
74
+ <minute>0</minute>
75
+ <second>0</second>
76
+ <timeZoneID>America/New_York</timeZoneID>
77
+ </startDateTime>
78
+ <startDateTimeType>USE_START_DATE_TIME</startDateTimeType>
79
+ <endDateTime>
80
+ <date>
81
+ <year>2011</year>
82
+ <month>2</month>
83
+ <day>1</day>
84
+ </date>
85
+ <hour>23</hour>
86
+ <minute>59</minute>
87
+ <second>0</second>
88
+ <timeZoneID>America/New_York</timeZoneID>
89
+ </endDateTime>
90
+ <unlimitedEndDateTime>false</unlimitedEndDateTime>
91
+ <creativeRotationType>OPTIMIZED</creativeRotationType>
92
+ <deliveryRateType>EVENLY</deliveryRateType>
93
+ <roadblockingType>ONE_OR_MORE</roadblockingType>
94
+ <lineItemType>STANDARD</lineItemType>
95
+ <unitType>IMPRESSIONS</unitType>
96
+ <duration>LIFETIME</duration>
97
+ <unitsBought>3</unitsBought>
98
+ <costPerUnit>
99
+ <currencyCode>USD</currencyCode>
100
+ <microAmount>0</microAmount>
101
+ </costPerUnit>
102
+ <valueCostPerUnit>
103
+ <currencyCode>USD</currencyCode>
104
+ <microAmount>0</microAmount>
105
+ </valueCostPerUnit>
106
+ <costType>CPM</costType>
107
+ <discountType>PERCENTAGE</discountType>
108
+ <discount>0.0</discount>
109
+ <creativeSizes>
110
+ <width>160</width>
111
+ <height>600</height>
112
+ <isAspectRatio>false</isAspectRatio>
113
+ </creativeSizes>
114
+ <creativeSizes>
115
+ <width>336</width>
116
+ <height>280</height>
117
+ <isAspectRatio>false</isAspectRatio>
118
+ </creativeSizes>
119
+ <creativeSizes>
120
+ <width>728</width>
121
+ <height>90</height>
122
+ <isAspectRatio>false</isAspectRatio>
123
+ </creativeSizes>
124
+ <allowOverbook>false</allowOverbook>
125
+ <stats>
126
+ <impressionsDelivered>123</impressionsDelivered>
127
+ <clicksDelivered>345</clicksDelivered>
128
+ </stats>
129
+ <deliveryIndicator>
130
+ <expectedDeliveryPercentage>11.11111</expectedDeliveryPercentage>
131
+ <actualDeliveryPercentage>22.222</actualDeliveryPercentage>
132
+ </deliveryIndicator>
133
+ <budget>
134
+ <currencyCode>USD</currencyCode>
135
+ <microAmount>0</microAmount>
136
+ </budget>
137
+ <status>DELIVERING</status>
138
+ <reservationStatus>RESERVED</reservationStatus>
139
+ <isArchived>false</isArchived>
140
+ <LineItemSummary.Type>LineItem</LineItemSummary.Type>
141
+ <targeting>
142
+ <inventoryTargeting>
143
+ <targetedPlacementIds>1234567</targetedPlacementIds>
144
+ <targetedPlacementIds>23456</targetedPlacementIds>
145
+ </inventoryTargeting>
146
+ </targeting>
147
+ </results>
148
+ </rval>
149
+ </getLineItemsByStatementResponse>
150
+ </soap:Body>
151
+ </soap:Envelope>
152
+ EOT
153
+ end
154
+ end