grouper-users - RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?
Subject: Grouper Users - Open Discussion List
List archive
- From: Paul Gazda <>
- To: Chris Hyzer <>, "" <>
- Subject: RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?
- Date: Wed, 18 Mar 2009 14:58:35 -0700
- Accept-language: en-US
- Acceptlanguage: en-US
Thanks for pointing out the resultCode reference. I see part
of the problem I was having in understanding things is that I am using the
GrouperClient api per your suggestion to do ws calls from java code. The doc for GCDeleteMember
and WsDeleteMemberResults do not document the SUCCESS_WASNT_IMMEDIATE
resultCode. I will look in the grouper.ws doc as well
from here on before throwing in the towel. J Paul Gazda From: Chris Hyzer
[mailto:] > Thanks for the detailed explanation. That clears up my
confusion. Sorry I did not see the doc on delete member. I was searching the
wiki > and the listserv for the resultCode and got no hits. I
think it would be very helpful to have a single place that documents all of the
> resultCodes so it is easy to find an explanation by
searching for the code in the wiki. The response code
docs are linked from the operation on the wiki under “response
codes”. I look at the docs and they aren’t very good, but it
at least gives you the list of possible codes J https://wiki.internet2.edu/confluence/display/GrouperWG/Delete+Member > If I query for
members of a composite group, I will see the subjects I was trying to delete You need to limit that query to IMMEDIATE members, and you
will not see the subject you want to delete… > it looks like a
composite group can have no members of its own, so an attempt to execute a
deleteMember on a composite group should > just fail. Yes, that makes
sense, I would be ok with that if people don’t have
objections… to remove the factor group of the composite you would
do a groupSave, and not a deleteMember, so it would be fine with me… Regards, Chris From: Paul Gazda
[mailto:] Chris, Thanks for the detailed explanation. That clears up my
confusion. Sorry I did not see the doc on delete member. I was searching the
wiki and the listserv for the resultCode and got no hits. I think it would be
very helpful to have a single place that documents all of the resultCodes so it
is easy to find an explanation by searching for the code in the wiki. I can live with the existing convention now that I
understand what to look for and what it means. On a more philosophical level, I
would argue that in the case of a composite group, the rationale for a
“success” status does indeed break down. If I query for members of
a composite group, I will see the subjects I was trying to delete. That is
different from the case where the subjects do not exist in the group at all. I
think that in the case I described, the delete operation should return a
successValue of “F” and a result code that indicates an error
because I am attempting an operation that is just not allowed. I think it would
also be idempotent because no matter how many times I attempt the same
operation, I will get an “F”. Based on my experimentation, it looks
like a composite group can have no members of its own, so an attempt to execute
a deleteMember on a composite group should just fail. Paul Gazda From: Chris Hyzer
[mailto:] Yes, I understand
that this is confusing… All grouper delete
member operations (WS, client, GSH, API) only delete immediate (or direct)
memberships: https://wiki.internet2.edu/confluence/display/GrouperWG/Delete+Member “Delete member will delete or replace the membership of a
group. This affects only direct memberships, not indirect
memberships. If the user is in an indirect membership, this is still a
success” There are two
outcomes from deleting a member from a group and the member is not already a
member. And I am talking about immediate members here. 1. There is an error, since the caller was expecting the
member to be a member 2. It is ok, the end result is that the member is not a
member, so who cares if the operation did anything or not, the end justifies
the means With web services,
it is good to have operations be idempotent, so that if the same operation is
transmitted twice, the end result (T|F not the result code or warnings or
whatever) is the same. If you go with #1, I suggest that the operation is
not idempotent, but with #2 it is. Currently grouper WS uses the second
option. In your case, it
breaks down, because you think the member is a member of the group, and you
think it is something that should be able to be deleted, but in fact, it is
not, and you are not notified. I do have the return
code: SUCCESS_WASNT_IMMEDIATE_BUT_HAS_EFFECTIVE, but maybe either that is not
working, or it doesn’t work for composites… would something like
that work? 1. Having the return code be SUCCESS
_WASNT_IMMEDIATE_BUT_HAS_EFFECTIVE, and that would include composite
memberships (I think of effective as anything but immediate… but do other
people need to know if it is because of composite or group as a member)?
Also, in the DB, there are other distinctions in the table data 2. –or- making another set of return codes: SUCCESS
_WASNT_IMMEDIATE_BUT_HAS_COMPOSITE 3. –or- using resultcode2 to put information about
this if it is not already used… 4. –or- leave as it is… J Thanks, Chris From: Paul Gazda
[mailto:] I’m
attempting to delete subjects from a composite group. When I do so, I get a
successValue of “T”, a resultCode of
“SUCCESS_WASNT_IMMEDIATE” and the subjects are not deleted. I find
this confusing because the operation was not a success. I’m pretty sure
it is trying to tell me that I should be deleting the subjects from the
composite member groups rather than the parent group, but it doesn’t seem
like it should be giving me either a successValue of “T” or a
resultCode that starts with “SUCCESS”. Can someone help me
understand what the SUCCESS_WASNT_IMMEDIATE code is supposed to mean in this
situation? Thanks. Paul
Gazda |
- Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Paul Gazda, 03/18/2009
- RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Chris Hyzer, 03/18/2009
- RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Paul Gazda, 03/18/2009
- RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Chris Hyzer, 03/18/2009
- RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Paul Gazda, 03/18/2009
- RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Chris Hyzer, 03/18/2009
- RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Paul Gazda, 03/18/2009
- RE: Meaning of SUCCESS_WASNT_IMMEDIATE resultCode?, Chris Hyzer, 03/18/2009
Archive powered by MHonArc 2.6.16.