import org.sonar.wsclient.internal.HttpRequestFactory;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
private static final String SEARCH_URL = BASE_URL + "search";
private static final String CREATE_URL = BASE_URL + "create";
private static final String UPDATE_URL = BASE_URL + "update";
- private static final String DELETE_URL = BASE_URL + "delete";
+ private static final String DEACTIVATE_URL = BASE_URL + "deactivate";
private final HttpRequestFactory requestFactory;
return new User(jsonUser);
}
+ /**
+ * TODO to be removed
+ */
@Override
public void delete(UserParameters userParameters) {
- requestFactory.post(DELETE_URL, userParameters.urlParams());
+ requestFactory.post(DEACTIVATE_URL, userParameters.urlParams());
+ }
+
+ @Override
+ public void deactivate(String login) {
+ Map<String, Object> params = new HashMap<String, Object>();
+ params.put("login", login);
+ requestFactory.post(DEACTIVATE_URL, params);
}
}
List<User> find(UserQuery query);
+ /**
+ * @since 3.7
+ */
User create(UserParameters userParameters);
+ /**
+ * @since 3.7
+ */
User update(UserParameters userParameters);
+ /**
+ * TODO to remove
+ */
+ @Deprecated
void delete(UserParameters userParameters);
+
+ /**
+ * @since 3.7
+ */
+ void deactivate(String login);
}
}
@Test
- public void should_delete_user() throws Exception {
+ public void should_deactivate_user() throws Exception {
httpServer.stubStatusCode(200);
- UserParameters params = UserParameters.create().login("daveloper");
- client.delete(params);
+ client.deactivate("daveloper");
- assertThatRequestUrlContains("/api/users/delete?", "login=daveloper");
+ assertThatRequestUrlContains("/api/users/deactivate?", "login=daveloper");
}
private void assertThatRequestUrlContains(String baseUrl, String... parameters) {