require 'open-uri' require 'helix_web_services_client/open_model' class HelixWebServicesClient # Array of Depot objects stored in the system. Not all fields will be # filled out (e.g., view). def depots arr = execute_method_no_body(:get, hve_path('depots')) arr.map { |a| OpenModel.new(a) } end # Returns the depot instance indicated by the depot name (or depot object) def depot(depot) depot = depot.depot if depot.is_a?(OpenModel) obj = execute_method_no_body(:get, hve_path("depots/#{URI.encode(depot)}")) OpenModel.new(obj) end # Creates a new depot in the system. def create_depot(depot) depot = OpenModel.new(depot) unless depot.is_a?(OpenModel) execute_method_with_body(:post, hve_path('depots'), depot.marshal_dump) end # Updates the depot specification. def update_depot(depot) depot = OpenModel.new(depot) unless depot.is_a?(OpenModel) execute_method_with_body(:patch, hve_path("depots/#{URI.encode(depot.depot)}"), depot.marshal_dump) end # Deletes the depot specification in the system. def delete_depot(depot) depot = depot.depot if depot.is_a?(OpenModel) execute_method_no_body(:delete, hve_path("depots/#{URI.encode(depot)}")) end end
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#4 | 15622 | tjuricek |
Move source code to 'source/' subdirectory of branch. build/ will remain where it is. |
||
#3 | 15240 | tjuricek |
Set api level via request path on all Helix Versioning Engine methods. This will allow migration of applications to different P4D versions. Our internal methods (like project API) should attempt to handle backward compatibility similarly. P4WEBAPI-118 |
||
#2 | 15205 | tjuricek | Implemented tests and documentation for depot spec editing. | ||
#1 | 13808 | tjuricek | Finish converting most of the core p4d API into the new monolithic system. | ||
//guest/perforce_software/helix-web-services/main/p4_web_api/clients/ruby/p4_web_api_client/lib/p4_web_api_client/client/depots.rb | |||||
#1 | 13412 | tjuricek |
Initial version of the web-services mainline. This is a collection of several projects, that will likely often get released together, though many of them may not always be relevant. See the README for more information. |