LprService

Name Lpr
Version
Included Services  
Java Package org.kuali.student.enrollment.lpr.service

The Lui Person Relationship (LPR) Service Maintains the relationship between
a Learning Unit Instance and a Person. Depending on the type this service
maintains relationships such as:

Operations
Main Message Structures

Method getLpr
Description Retrieves the Relation for the specified LUI Person Relation id
Parameters String lprId Identifier for the LUI Person Relation
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfo LUI Person Relation information
Errors DoesNotExistException lprId not found
InvalidParameterException invalid lprId
MissingParameterException missing lprId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByIds
Description Retrieves the Relation for the specified list of LUI Person Relation Ids
Parameters StringList lprIds List of identifiers for LUI Person
Relations
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation information
Errors DoesNotExistException One or more lprIds not found
InvalidParameterException One or more invalid
lprIds
MissingParameterException missing lprIds
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLuiIdsByPersonAndTypeAndState
Description Retrieves the LUI Ids for Person, type and state.

Example Use Case: This would allow you to get all the active (state) courses
(type=registration) for a student.
Parameters String personId Identifier for the Person
String lprTypeKey Type of LUI Person Relation
String relationState Relation State
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return StringList Simple list of LUI Ids
Errors DoesNotExistException personId, lprTypeKey,
relationState, person to LUI relationship not found
InvalidParameterException invalid personId,
lprTypeKey, relationState
MissingParameterException missing personId,
lprTypeKey, relationState
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getPersonIdsByLuiAndTypeAndState
Description Retrieves Person Ids related to the specified LUI, type and state

This would allow you to get a list of people who are active (state) students (type=registration)
for a particular course (luiId)

Example Use Case: get all students in a course.
Parameters String luiId Identifier for the LUI
String lprTypeKey Type of LUI Person Relation
String relationState Relation State
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return StringList Simple list of Person Ids
Errors DoesNotExistException luiId, lprTypeKey,
relationState, LUI to person relationship not found
InvalidParameterException invalid luiId,
lprTypeKey, relationState
MissingParameterException missing luiId,
lprTypeKey, relationState
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByPersonAndLui
Description Retrieves Person Relation for person and LUI

Example Use Case: Can be used to get course registrations for a person in a particular course.
Although this would typically only return one registration for each set of values, but
if a person adds a course then drops it then adds it again you could get multiple registrations.
Parameters String personId Identifier for person
String luiId Identifier for LUI
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation info
Errors DoesNotExistException personId, luiId not found
InvalidParameterException invalid personId, luiId
MissingParameterException missing personId, luiId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByPerson
Description Retrieves LUI Person Relations for Person

Example Use Case: Can be used to get all the course registrations for a person for as long as
they have been at the school, but please note it could include student registrations
in things that are not courses OR student's acting as teaching assistants
to courses.
Parameters String personId Identifier for person
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation info
Errors DoesNotExistException personId not found
InvalidParameterException invalid personId
MissingParameterException missing personId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByLui
Description Retrieves LUI Person Relation for a specified LUI

Example Use Case: Can be used to get all the people and their relationships to a particular
course offering.
Parameters String luiId Identifier for LUI
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation info
Errors DoesNotExistException luiId not found
InvalidParameterException invalid luiId
MissingParameterException missing luiId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByLuiAndType
Description Retrieves LUI Person Relation for a particular type and specified LUI

Example: Can be used to get all the people with a particular relationship to a
specified course offering.
Parameters String luiId Identifier for LUI
String lprTypeKey LUI person relation type key
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation info
Errors DoesNotExistException luiId not found
InvalidParameterException invalid luiId
MissingParameterException missing luiId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByPersonForAtp
Description Retrieves a list of LPRs by person and ATP

Example Use Case: Can be used to get a list of registrations or instructor assignments for a person and a term

Note: the ATP is not stored on the LPR but on the Lui so the ATP specified is used
to select or filter the Lui ids that can appear on the LPRs that are returned.
Parameters String personId the person id
String atpId the id of the academic time period
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation info
Errors DoesNotExistException luiId not found
InvalidParameterException invalid luiId
MissingParameterException missing luiId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByPersonAndTypeForAtp
Description Retrieves a list of LPRs for a person and particular ATP by the type of
LPR.

Example Use Case: Can be used to get a list of registrations for a person and a relation type
but making sure to exclude other types of relations the student may have
during that term such as also being an teaching assistant for a course.
Parameters String personId the person id
String atpId the id of the academic time period
String lprTypeKey LUI person relation type key
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation info
Errors DoesNotExistException luiId not found
InvalidParameterException invalid luiId
MissingParameterException missing luiId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByPersonAndLuiType
Description Gets the LPRs for a person and the type Lui.

Example Use Case: Can be used to get a list of all the relations a person may have to a course
offering (which is a lui type).
Parameters String personId person identifier
String luiTypeKey type of the LUI
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList List of LUI Person Relation info
Errors DoesNotExistException luiId not found
InvalidParameterException invalid luiId
MissingParameterException missing luiId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method getLprsByPersonForAtpAndLuiType
Description Gets the the LPRs for a person and atp and Lui type.

Example Use Case: Can be used to get the relations a person may have to a course offering
(which is a lui type) and a particular term (atpId)
Parameters String personId person identifier
String atpId academic time period identifier
String luiTypeKey type of the LUI
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList a List of Lui Person Relation Info
Errors DoesNotExistException luiId not found
InvalidParameterException invalid luiId
MissingParameterException missing luiId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method validateLpr
Description Validates the particular relation in a state for a Person and LUI
Parameters String validationType Identifier of the extent of validation
String luiId the identifier of the lui
String personId the identifier of the person
String lprTypeKey the key to the type of the relationship
LprInfo lprInfo lpr to be validated
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return ValidationResultInfoList list of validation results, list should be be zero length if no
validation results are generated
Errors DoesNotExistException lprInfo not found
InvalidParameterException invalid lprInfo
relationState
MissingParameterException missing lprInfo
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method searchForLprIds
Description Searches details of LUI Person Relation Ids
Parameters QueryByCriteria criteria Criteria to be used for retrieval of multiple LUI Person
Relation identifiers
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return StringList Simple list of LUI Person Relation identifiers
Errors InvalidParameterException invalid relation criteria
MissingParameterException missing relation criteria
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method searchForLprs
Description Searches details of LUI Person Relation by search criteria
Parameters QueryByCriteria criteria Criteria to be used for retrieval of multiple LUI Person
Relation identifiers
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfoList Simple list of LUI Person Relation identifiers
Errors InvalidParameterException invalid relation criteria
MissingParameterException missing relation criteria
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method createLpr
Description Creates relation between the specified Person and LUI
Parameters String personId Person Identifier
String luiId LUI Identifier
String lprTypeKey Type of LUI to Person Relation
LprInfo lprInfo Information required to create the LUI
Person relation
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfo Structure containing LUI Person relation identifiers
Errors DataValidationErrorException if lprInfo is not
valid
DoesNotExistException personId, luiId, relationState,
lprTypeKey does not exist
InvalidParameterException invalid personId, luiId, relationState,
lprTypeKey, lprInfo
MissingParameterException missing personId, luiId, relationState,
lprTypeKey, lprInfo
OperationFailedException unable to complete request
PermissionDeniedException authorization failure
ReadOnlyException attempt to update a read only attribute

Back to Operations

Method createLprsForPerson
Description Creates multiple LPRs for one specified person. This is an all or
nothing transaction - any error will invalidate the entire transaction.
Parameters String personId Identifier for Person
String lprTypeKey Type of LUI Person relation
LprInfoList lprInfos List of Information required to create the LUI
Person relation
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return BulkStatusInfoList Structure containing status and LUI Person relation identifiers and message
Errors DataValidationErrorException if luiPersonsRelationInfo is not
valid
DoesNotExistException personId, lprTypeKey does not exist
InvalidParameterException invalid personId, lprTypeKey, lprInfo
MissingParameterException missing personId, lprTypeKey, lprInfo
OperationFailedException unable to complete request
PermissionDeniedException authorization failure
ReadOnlyException attempt to update a read only attribute

Back to Operations

Method createLprsForLui
Description Creates multiple LPRs for one specified LUI. This is an all or
nothing transaction - any error will invalidate the entire transaction.
Parameters String luiId Identifier for Lui
String lprTypeKey Type of LUI Person relation
LprInfoList lprInfos List of Information required to create the LUI
Person relation
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return BulkStatusInfoList Structure containing status and LUI Person relation identifiers and message
Errors DataValidationErrorException if luiPersonsRelationInfo is not
valid
DoesNotExistException luiId, lprTypeKey does not exist
InvalidParameterException invalid luiId, lprTypeKey, lprInfos
MissingParameterException missing luiId, lprTypeKey, lprInfos
OperationFailedException unable to complete request
PermissionDeniedException authorization failure
ReadOnlyException attempt to update a read only attribute

Back to Operations

Method updateLpr
Description Update relations between Person and LUI
Parameters String lprId Identifier for the LUI Person Relation
LprInfo lprInfo Changed information about the LUI Person
Relation
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return LprInfo Updated information about the LUI Person Relation
Errors DoesNotExistException lprId does not exist
DataValidationErrorException if lprInfo is not
valid
InvalidParameterException invalid lprId,
lprInfo
MissingParameterException missing lprId,
lprInfo
OperationFailedException unable to complete request
PermissionDeniedException authorization failure
ReadOnlyException attempt to update a read only attribute
VersionMismatchException if optimistic lock version ind has
changed

Back to Operations

Method deleteLpr
Description Deletes relation between the specified Person and LUI
Parameters String lprId Identifier for the LUI Person Relation
ContextInfo contextInfo Context information containing the principalId and locale
information about the caller of service operation
Return StatusInfo status of the operation (success, failed)
Errors DoesNotExistException lprId does not exist
InvalidParameterException invalid lprId
MissingParameterException missing lprId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method createLprTransaction
Description This method creates a LPR transaction of the specified type

Validates the transaction generates a unique id for the request and
persists it in the back-end.
Parameters String lprTransactionType LPR transaction type
LprTransactionInfo lprTransactionInfo LPR transaction info
ContextInfo contextInfo context info
Return LprTransactionInfo ???
Errors DataValidationErrorException if LprTransactionInfo fields are not
valid
DoesNotExistException LUI or Person doesn't exist
InvalidParameterException Invalid lprTransactionType, lprTransaction
MissingParameterException Missing fields on LprTransactionInfo
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method createLprTransactionFromExisting
Description Creates a new Lpr Transaction from an existing LPR transaction

Copies the transaction's Items as well.

The new transaction has the same type as the existing transaction.
Since transactions can only be processed once this method was intended
to allow the application to easily create a new transaction with all of it's items
that the user be able to fix and update any problems that resulted from
processing the existing transaction.
Parameters String lprTransactionId LprTransaction identifier
ContextInfo contextInfo the context information
Return LprTransactionInfo ???
Errors DataValidationErrorException LprTransactionInfo is not valid
DoesNotExistException lprTransactionId doesn't exist
InvalidParameterException Invalid lprTransactionId
MissingParameterException Missing lprTransactionId
OperationFailedException unable to complete request
PermissionDeniedException authorization failure

Back to Operations

Method updateLprTransaction
Description This method updates an LPR Transaction and all of it's items.
Parameters String lprTransactionId The transaction identifier
LprTransactionInfo lprTransactionInfo The updated Lpr Transaction
ContextInfo contextInfo ???
Return LprTransactionInfo ???
Errors DataValidationErrorException LprTransactionInfo is not valid
DoesNotExistException lprTransactionId doesn't exist
InvalidParameterException Invalid lprTransactionId or
lprTransactionInfo
MissingParameterException Missing lprTransactionId or
lprTransactionInfo
OperationFailedException unable to complete request
PermissionDeniedException authorization failure
VersionMismatchException for when Optimistic Locking encounters a version mis-match.

Back to Operations

Method getLprTransaction
Description Retrieves the LPR Transactions based on it's identifier.
Parameters String lprTransactionId The transaction identifier
ContextInfo contextInfo the contextual information
Return LprTransactionInfo ???
Errors DoesNotExistException lprTransactionId doesn't exist
InvalidParameterException Invalid lprTransactionId
MissingParameterException Missing lprTransactionId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method getLprTransactionItemsByPersonAndLui
Description Retrieves LPR Transactions with an item by Person and LUI

Selects all transactions that have at least one item that matches the specified
person and either the existing or new lui.

Note: this matches the person on the item not the person requesting the transaction
which is on the transaction.
Parameters String personId The person identifier
String luiId The LUI id
ContextInfo contextInfo the context information
Return LprTransactionItemInfoList ???
Errors DoesNotExistException personId or luiId doesn't exist
InvalidParameterException Invalid personId or luiId
MissingParameterException Missing personId or luiId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method getLprTransactionsByIds
Description Get lpr transactions for the specified list of transaction ids.
Parameters StringList lprTransactionIds the ids of the lpr transactions
ContextInfo contextInfo the context information
Return LprTransactionInfoList ???
Errors DoesNotExistException personId or luiId doesn't exist
InvalidParameterException Invalid personId or luiId
MissingParameterException Missing personId or luiId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method getLprTransactionItemsByResultingLpr
Description Retrieves LPR Transaction Items based on the resulting LPR.

Selects all transaction items that have this resulting lpr
Parameters String lprId The resulting lpr
ContextInfo contextInfo the context info
Return LprTransactionItemInfoList ???
Errors InvalidParameterException Invalid personId
MissingParameterException Missing personId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method getLprTransactionItemsByLui
Description Retrieves LPR Transaction Items based on an item with the specified LUI.

Selects all transaction items that where the specified LUI matches either
the existing or new lui
Parameters String luiId The LUI identifier
ContextInfo contextInfo the ontext info
Return LprTransactionItemInfoList ???
Errors InvalidParameterException Invalid personId
MissingParameterException Missing personId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method getUnsubmittedLprTransactionsByRequestingPersonAndAtp
Description Retrieves transactions for the requesting person and the ATP.

Unsubmitted transactions are those that have not been submitted (processed) yet. They can be found
by checking the state of transactions where state is "New" (see wiki).
Parameters String requestingPersonId The person identifier
String atpId The ATP Id
ContextInfo contextInfo the context info
Return LprTransactionInfoList ???
Errors InvalidParameterException Invalid personId or atpId
MissingParameterException Missing personId or atpId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method deleteLprTransaction
Description Deletes an lpr Transaction based on Id.
Parameters String lprTransactionId LPR Transaction identifier
ContextInfo contextInfo the context info
Return StatusInfo ???
Errors DoesNotExistException lprTransactionId doesn't exist
InvalidParameterException Invalid lprTransactionId
MissingParameterException Missing lprTransactionId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method processLprTransaction
Description Submits a LPR transaction - validates the input and based on the type of
transaction creates, updates, cancels or removes LPRs.
Parameters String lprTransactionId the id for the LPR transaction
ContextInfo contextInfo ???
Return LprTransactionInfo ???
Errors AlreadyExistsException LPR is already present
DoesNotExistException lprTransactionId doesn't exist
InvalidParameterException Invalid lprTransactionId
MissingParameterException Missing lprTransactionId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method verifyLprTransaction
Description Validate the LPR Transaction
Parameters String lprTransactionId the id of the transaction
ContextInfo contextInfo the context info
Return ValidationResultInfoList ???
Errors DoesNotExistException lprTransactionId doesn't exist
InvalidParameterException Invalid lprTransactionId
MissingParameterException Missing lprTransactionId
OperationFailedException Unable to complete request
PermissionDeniedException Authorization failure

Back to Operations

Method searchForLprTransactions
Description search for matching LPR transactions
Parameters QueryByCriteria criteria ???
ContextInfo contextInfo ???
Return LprTransactionInfoList ???
Errors InvalidParameterException ???
MissingParameterException ???
OperationFailedException ???
PermissionDeniedException ???

Back to Operations

Method searchForLprTransactionIds
Description Search for matching LPR transactions returning their ids
Parameters QueryByCriteria criteria ???
ContextInfo contextInfo ???
Return StringList ???
Errors InvalidParameterException ???
MissingParameterException ???
OperationFailedException ???
PermissionDeniedException ???

Back to Operations