Support credential re-generation

[Closes #13]
This commit is contained in:
Daniel Lavoie
2017-11-06 08:51:18 -05:00
parent 1ba7a7a6b8
commit 961ce65070
2 changed files with 5 additions and 5 deletions

View File

@@ -64,6 +64,7 @@ public class CredHubTemplate implements CredHubOperations {
static final String PERMISSIONS_ACTOR_URL_QUERY = PERMISSIONS_URL_QUERY + "&actor={actor}";
static final String INTERPOLATE_URL_PATH = "/api/v1/interpolate";
static final String REGENERATE_URL_PATH = "/api/v1/regenerate";
private final RestTemplate restTemplate;
@@ -148,12 +149,11 @@ public class CredHubTemplate implements CredHubOperations {
return doWithRest(new RestOperationsCallback<CredentialDetails<T>>() {
@Override
public CredentialDetails<T> doWithRestOperations(RestOperations restOperations) {
Map<String, Object> request = new HashMap<String, Object>(2);
Map<String, Object> request = new HashMap<String, Object>(1);
request.put("name", name.getName());
request.put("regenerate", true);
ResponseEntity<CredentialDetails<T>> response =
restOperations.exchange(BASE_URL_PATH, POST,
restOperations.exchange(REGENERATE_URL_PATH, POST,
new HttpEntity<Map<String, Object>>(request), ref);
throwExceptionOnError(response);

View File

@@ -44,6 +44,7 @@ import static org.springframework.credhub.core.CredHubTemplate.BASE_URL_PATH;
import static org.springframework.credhub.core.CredHubTemplate.ID_URL_PATH;
import static org.springframework.credhub.core.CredHubTemplate.NAME_URL_QUERY;
import static org.springframework.credhub.core.CredHubTemplate.NAME_URL_QUERY_CURRENT;
import static org.springframework.credhub.core.CredHubTemplate.REGENERATE_URL_PATH;
import static org.springframework.http.HttpMethod.GET;
import static org.springframework.http.HttpMethod.POST;
import static org.springframework.http.HttpMethod.PUT;
@@ -131,10 +132,9 @@ public abstract class CredHubTemplateDetailUnitTestsBase<T, P> extends CredHubTe
void verifyRegenerate(ResponseEntity<CredentialDetails<T>> expectedResponse) {
Map<String, Object> request = new HashMap<String, Object>() {{
put("name", NAME.getName());
put("regenerate", true);
}};
when(restTemplate.exchange(eq(BASE_URL_PATH), eq(POST),
when(restTemplate.exchange(eq(REGENERATE_URL_PATH), eq(POST),
eq(new HttpEntity<Map<String, Object>>(request)), isA(ParameterizedTypeReference.class)))
.thenReturn(expectedResponse);