org.glite.security.voms.service.request
Class VOMSRequestSoapBindingImpl

java.lang.Object
  extended byorg.glite.security.voms.service.request.VOMSRequestSoapBindingImpl
All Implemented Interfaces:
VOMSRequest

public class VOMSRequestSoapBindingImpl
extends java.lang.Object
implements VOMSRequest

The implementation of the Request SOAP interface.

Author:
Karoly Lorentey

Constructor Summary
VOMSRequestSoapBindingImpl()
           
 
Method Summary
 void allowRequest(long id, java.lang.String comment)
          Accept the given request, i.e. do the requested operation.
 void confirmRequest(long id, java.lang.String cookie, java.lang.String comment)
          Confirm the email address given during the creation of the request.
 void deleteRequest(long id, java.lang.String comment)
          Delete the given request from the database.
 void denyRequest(long id, java.lang.String comment)
          Deny the given request, i.e. don't do the requested operation.
 ShortRequest[] getAllRequests()
          Return a list of all requests in the database.
 ShortRequest[] getIncompleteRequests()
          Return a list of all incomplete requests in the database.
 int getMajorVersionNumber()
          Returns the major version number.
 int getMinorVersionNumber()
          Returns the minor version number.
 ShortRequest[] getMyRequests()
          Return a list of all requests created by the client.
 int getPatchVersionNumber()
          Returns the patch version number.
 ShortRequest[] getPendingRequests()
          A shorthand for getRequestsInState (null, null, "Undecided").
 DetailedRequest getRequest(long id)
          Return detailed information about a request.
 ShortRequest[] getRequestsInState(java.lang.String type, java.lang.String container, java.lang.String state)
          Return a list of requests with the given type, with the given subject container and in the given state.
 long newAddMemberRequest(java.lang.String group, java.lang.String comment, java.lang.String[] parameters)
          Create a new request for membership in the specified group.
 long newCreateUserRequest(User user, java.lang.String comment, java.lang.String[] parameters)
          Create a new request for adding a new user to the VO.
 long newCreateUserRequestFromContext(java.lang.String email, java.lang.String comment, java.lang.String[] parameters)
          Create a new request for adding a new user to the VO.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VOMSRequestSoapBindingImpl

public VOMSRequestSoapBindingImpl()
Method Detail

newCreateUserRequestFromContext

public long newCreateUserRequestFromContext(java.lang.String email,
                                            java.lang.String comment,
                                            java.lang.String[] parameters)
                                     throws VOMSException
Description copied from interface: VOMSRequest
Create a new request for adding a new user to the VO. The new user's DN and CA are retrieved from the security context (i.e. from the client's certificate).

Specified by:
newCreateUserRequestFromContext in interface VOMSRequest
Parameters:
email - An email address to send allow/deny notifications to.
comment - A free-form comment for the VO administrator about this request.
parameters - Optional parameters for the action in an even element String array (key at odd, value at even positions).
Returns:
the unique id of the newly created request (for status queries).
Throws:
VOMSException

newCreateUserRequest

public long newCreateUserRequest(User user,
                                 java.lang.String comment,
                                 java.lang.String[] parameters)
                          throws VOMSException
Description copied from interface: VOMSRequest
Create a new request for adding a new user to the VO. This general form requires an ADD privilege on the VO group.

Specified by:
newCreateUserRequest in interface VOMSRequest
Parameters:
user - Additional info about the user (cn, email, certUri).
comment - A free-form comment for the VO administrator about this request.
parameters - Optional parameters for the action in an even element String array (key at odd, value at even positions).
Returns:
the unique id of the newly created request (for status queries).
Throws:
VOMSException

newAddMemberRequest

public long newAddMemberRequest(java.lang.String group,
                                java.lang.String comment,
                                java.lang.String[] parameters)
                         throws VOMSException
Description copied from interface: VOMSRequest
Create a new request for membership in the specified group. The member's DN and CA are retrieved from the security context (i.e. from the client's certificate).

Specified by:
newAddMemberRequest in interface VOMSRequest
Parameters:
group - The group to request membership in.
comment - A free-form comment for the VO administrator about this request.
parameters - Optional parameters for the action in an even element String array (key at odd, value at even positions).
Returns:
the unique id of the newly created request (for status queries).
Throws:
VOMSException

getMyRequests

public ShortRequest[] getMyRequests()
                             throws VOMSException
Description copied from interface: VOMSRequest
Return a list of all requests created by the client.

Specified by:
getMyRequests in interface VOMSRequest
Throws:
VOMSException

getRequestsInState

public ShortRequest[] getRequestsInState(java.lang.String type,
                                         java.lang.String container,
                                         java.lang.String state)
                                  throws VOMSException
Description copied from interface: VOMSRequest
Return a list of requests with the given type, with the given subject container and in the given state. Either parameter can be empty, which means return all types, all containers and/or all states, respectively.

Specified by:
getRequestsInState in interface VOMSRequest
Throws:
VOMSException

getIncompleteRequests

public ShortRequest[] getIncompleteRequests()
                                     throws VOMSException
Description copied from interface: VOMSRequest
Return a list of all incomplete requests in the database.

Specified by:
getIncompleteRequests in interface VOMSRequest
Throws:
VOMSException

getPendingRequests

public ShortRequest[] getPendingRequests()
                                  throws VOMSException
Description copied from interface: VOMSRequest
A shorthand for getRequestsInState (null, null, "Undecided").

Specified by:
getPendingRequests in interface VOMSRequest
Throws:
VOMSException

getAllRequests

public ShortRequest[] getAllRequests()
                              throws VOMSException
Description copied from interface: VOMSRequest
Return a list of all requests in the database. A shorthand for getRequestsInState (null, null, null).

Specified by:
getAllRequests in interface VOMSRequest
Throws:
VOMSException

getRequest

public DetailedRequest getRequest(long id)
                           throws VOMSException
Description copied from interface: VOMSRequest
Return detailed information about a request.

Specified by:
getRequest in interface VOMSRequest
Parameters:
id - The unique id of the request.
Returns:
Detailed information about the request.
Throws:
VOMSException

allowRequest

public void allowRequest(long id,
                         java.lang.String comment)
                  throws VOMSException
Description copied from interface: VOMSRequest
Accept the given request, i.e. do the requested operation. If the operation fails, a VOMSException is thrown and the request stays in the queue. If the operation succeeds, a notification is sent to the client which includes the given comment.

Specified by:
allowRequest in interface VOMSRequest
Parameters:
id - The unique id of the request.
comment - A textual comment to the user who requested the operation.
Throws:
VOMSException

denyRequest

public void denyRequest(long id,
                        java.lang.String comment)
                 throws VOMSException
Description copied from interface: VOMSRequest
Deny the given request, i.e. don't do the requested operation. The request is closed and a notification is sent to the client which includes the given comment.

Specified by:
denyRequest in interface VOMSRequest
Parameters:
id - The unique id of the request.
comment - A textual comment for the user who requested the operation.
Throws:
VOMSException

confirmRequest

public void confirmRequest(long id,
                           java.lang.String cookie,
                           java.lang.String comment)
                    throws VOMSException
Description copied from interface: VOMSRequest
Confirm the email address given during the creation of the request. Only the requester may confirm the address.

Specified by:
confirmRequest in interface VOMSRequest
Parameters:
id - The unique id of the request.
cookie - The identifier that was sent to the given email address.
comment - A textual comment for this operation.
Throws:
VOMSException

deleteRequest

public void deleteRequest(long id,
                          java.lang.String comment)
                   throws VOMSException
Description copied from interface: VOMSRequest
Delete the given request from the database. Only the requester or a VO admin may delete a request.

Specified by:
deleteRequest in interface VOMSRequest
Parameters:
id - The unique id of the request.
comment - A textual comment for this operation.
Throws:
VOMSException

getMajorVersionNumber

public int getMajorVersionNumber()
Description copied from interface: VOMSRequest
Returns the major version number.

Specified by:
getMajorVersionNumber in interface VOMSRequest

getMinorVersionNumber

public int getMinorVersionNumber()
Description copied from interface: VOMSRequest
Returns the minor version number.

Specified by:
getMinorVersionNumber in interface VOMSRequest

getPatchVersionNumber

public int getPatchVersionNumber()
Description copied from interface: VOMSRequest
Returns the patch version number.

Specified by:
getPatchVersionNumber in interface VOMSRequest