Ravi Nori has uploaded a new change for review. Change subject: restapi : Add group doesn't work (#882710) ......................................................................
restapi : Add group doesn't work (#882710) Adding a group using api requires authetication using the domain from which we are adding the group. This patch adds the ability to add groups from domains identified by the group name. Also lets the user add groups by id. Change-Id: I20927d4732af6a22702c65c0f32f072039cb82e9 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=882710 Signed-off-by: Ravi Nori <rn...@redhat.com> --- M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendGroupsResourceBase.java 1 file changed, 23 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/92/9692/1 diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendGroupsResourceBase.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendGroupsResourceBase.java index 82d7546..7c7cd5f 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendGroupsResourceBase.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendGroupsResourceBase.java @@ -100,6 +100,10 @@ } protected String getSearchPattern(String param) { + return getSearchPattern(param, null); + } + + protected String getSearchPattern(String param, String domain) { String constraint = QueryHelper.getConstraint(getUriInfo(), ad_groups.class, false); final StringBuilder sb = new StringBuilder(128); @@ -107,7 +111,10 @@ parent!=null? parent.getDirectory().getName() : - getCurrent().get(Principal.class).getDomain())); + domain==null? + getCurrent().get(Principal.class).getDomain() + : + domain)); sb.append(StringHelper.isNullOrEmpty(constraint)? "name="+param @@ -118,15 +125,28 @@ } protected ad_groups getAdGroup(Group group) { + if(group.getId() != null) { + ad_groups ad_group = lookupGroupById(asGuid(group.getId())); + return ad_group == null ? entityNotFound() : ad_group; + } + List<ad_groups> adGroups = asCollection(getEntity(ArrayList.class, SearchType.AdGroup, - getSearchPattern("*"))); + getSearchPattern("*", getDomainName(group.getName())))); for (ad_groups adGroup : adGroups) { if (adGroup.getname().equals(group.getName())) { return adGroup; } } - return handleError(new EntityNotFoundException(group.getName()), true); + return entityNotFound(); + } + + private String getDomainName(String groupName) { + int index = groupName.indexOf("/"); + if(index == -1) { + return null; + } + return groupName.substring(0, index); } protected List<ad_groups> getGroupsFromDomain() { -- To view, visit http://gerrit.ovirt.org/9692 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I20927d4732af6a22702c65c0f32f072039cb82e9 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <rn...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches