Skip to content
This repository was archived by the owner on Jun 2, 2021. It is now read-only.

Commit ee7d6a6

Browse files
author
Brian Butz
committed
v3(services): Add link to parameters in service credential binding response
[#174086740](https://www.pivotaltracker.com/story/show/174086740)
1 parent e8ccc8e commit ee7d6a6

4 files changed

Lines changed: 27 additions & 9 deletions

File tree

app/presenters/v3/service_credential_binding_presenter.rb

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -67,14 +67,13 @@ def last_operation
6767

6868
def base_links
6969
{
70-
self: { href: url_builder.build_url(path: path_to_self) },
71-
details: {
72-
href: url_builder.build_url(path: "#{path_to_self}/details")
73-
},
74-
service_instance: {
75-
href: url_builder.build_url(path: "/v3/service_instances/#{@resource.service_instance_guid}")
76-
}
77-
}
70+
self: path_to_self,
71+
details: "#{path_to_self}/details",
72+
parameters: "#{path_to_self}/parameters",
73+
service_instance: "/v3/service_instances/#{@resource.service_instance_guid}"
74+
}.transform_values do |path|
75+
hrefify(path)
76+
end
7877
end
7978

8079
def path_to_self
@@ -96,7 +95,11 @@ def app_relationship
9695
def app_link
9796
return {} if @resource.app_guid.blank?
9897

99-
{ app: { href: url_builder.build_url(path: "/v3/apps/#{@resource.app_guid}") } }
98+
{ app: hrefify("/v3/apps/#{@resource.app_guid}") }
99+
end
100+
101+
def hrefify(path)
102+
{ href: url_builder.build_url(path: path) }
100103
end
101104
end
102105
end

docs/v3/source/includes/api_resources/_service_credential_bindings.erb

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@
3030
"details": {
3131
"href": "https://api.example.org/v3/service_bindings/dde5ad2a-d8f4-44dc-a56f-0452d744f1c3/details"
3232
},
33+
"parameters": {
34+
"href": "https://api.example.org/v3/service_bindings/dde5ad2a-d8f4-44dc-a56f-0452d744f1c3/parameters"
35+
},
3336
"service_instance": {
3437
"href": "https://api.example.org/v3/service_instances/8bfe4c1b-9e18-45b1-83be-124163f31f9e"
3538
},
@@ -62,6 +65,9 @@
6265
"details": {
6366
"href": "https://api.example.org/v3/service_bindings/dde5ad2a-d8f4-44dc-a56f-0452d744f1c3/details"
6467
},
68+
"parameters": {
69+
"href": "https://api.example.org/v3/service_bindings/dde5ad2a-d8f4-44dc-a56f-0452d744f1c3/parameters"
70+
},
6571
"service_instance": {
6672
"href": "https://api.example.org/v3/service_instances/8bfe4c1b-9e18-45b1-83be-124163f31f9e"
6773
}

spec/request/service_credential_bindings_spec.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -887,6 +887,9 @@ def expected_json(binding)
887887
details: {
888888
href: "#{link_prefix}/v3/service_credential_bindings/#{binding.guid}/details"
889889
},
890+
parameters: {
891+
href: "#{link_prefix}/v3/service_credential_bindings/#{binding.guid}/parameters"
892+
},
890893
service_instance: {
891894
href: "#{link_prefix}/v3/service_instances/#{binding.service_instance.guid}"
892895
}

spec/unit/presenters/v3/service_credential_binding_presenter_spec.rb

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,9 @@ module CloudController
5555
details: {
5656
href: %r{.*/v3/service_credential_bindings/some-guid/details}
5757
},
58+
parameters: {
59+
href: %r{.*/v3/service_credential_bindings/some-guid/parameters}
60+
},
5861
app: {
5962
href: %r{.*/v3/apps/app-guid}
6063
},
@@ -106,6 +109,9 @@ module CloudController
106109
details: {
107110
href: %r{.*/v3/service_credential_bindings/some-guid/details}
108111
},
112+
parameters: {
113+
href: %r{.*/v3/service_credential_bindings/some-guid/parameters}
114+
},
109115
service_instance: {
110116
href: %r{.*/v3/service_instances/instance-guid}
111117
}

0 commit comments

Comments
 (0)