class PactBroker::Api::Resources::DeployedVersion
Public Instance Methods
allowed_methods()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 23 def allowed_methods ["GET", "PATCH", "OPTIONS"] end
content_types_accepted()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 17 def content_types_accepted [ ["application/merge-patch+json", :from_merge_patch_json] ] end
content_types_provided()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 11 def content_types_provided [ ["application/hal+json", :to_json] ] end
from_merge_patch_json()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 39 def from_merge_patch_json if request.patch? if resource_exists? process_currently_deployed_param else 404 end else 415 end end
patch_can_create?()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 27 def patch_can_create? false end
policy_name()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 51 def policy_name :'versions::deployed_version' end
policy_record()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 61 def policy_record deployed_version&.environment end
policy_record_context()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 55 def policy_record_context { pacticipant: deployed_version&.pacticipant } end
resource_exists?()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 31 def resource_exists? !!deployed_version end
to_json()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 35 def to_json decorator_class(:deployed_version_decorator).new(deployed_version).to_json(**decorator_options) end
Private Instance Methods
currently_deployed_param()
click to toggle source
can’t use ||= with a potentially nil value
# File lib/pact_broker/api/resources/deployed_version.rb, line 68 def currently_deployed_param if defined?(@currently_deployed_param) @currently_deployed_param else @currently_deployed_param = params(default: {})[:currentlyDeployed] end end
deployed_version()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 88 def deployed_version @deployed_version ||= deployed_version_service.find_by_uuid(uuid) end
process_currently_deployed_param()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 76 def process_currently_deployed_param if currently_deployed_param == false @deployed_version = deployed_version_service.record_version_undeployed(deployed_version) response.body = to_json elsif currently_deployed_param == true set_json_validation_error_messages(currentlyDeployed: [message("errors.validation.cannot_set_currently_deployed_true")]) 422 else response.body = to_json end end
uuid()
click to toggle source
# File lib/pact_broker/api/resources/deployed_version.rb, line 92 def uuid identifier_from_path[:uuid] end