org.kuali.student.enrollment.lui.service
Interface LuiService

All Superinterfaces:
DataDictionaryService, TypeService
All Known Implementing Classes:
LuiServiceAuthorizationDecorator, LuiServiceDecorator, LuiServiceImpl, LuiServiceValidationDecorator

public interface LuiService
extends DataDictionaryService, TypeService

Learning Unit Insntance (LUI) Service Managages the creation of Instances of the cannonical Learning unit. An instance is associated with a particular time period during which is is offered. This includes course and section offerings as well as program offerings Version: 1.0 (Dev)


Method Summary
 LuiInfo createLui(String cluId, String atpKey, LuiInfo luiInfo, ContextInfo context)
          Creates a new LUI.
 LuiLuiRelationInfo createLuiLuiRelation(String luiId, String relatedLuiId, String luLuRelationTypeKey, LuiLuiRelationInfo luiLuiRelationInfo, ContextInfo context)
          Create a relationship between two LUIs.
 StatusInfo deleteLui(String luiId, ContextInfo context)
          Deletes a LUI record.
 StatusInfo deleteLuiLuiRelation(String luiLuiRelationId, ContextInfo context)
          Deletes a relationship between two LUIs.
 LuiInfo getLui(String luiId, ContextInfo context)
          Retrieves information about a LUI.
 List<String> getLuiIdsByCluId(String cluId, ContextInfo context)
          Retrieves the list of LUI ids for the specified CLU.
 List<String> getLuiIdsByRelation(String relatedLuiId, String luLuRelationTypeKey, ContextInfo context)
          Retrieves the list of LUI Ids for the specified related LUI Id and LU to LU relation type (getRelatedLuiIdsByLuiId from the other direction).
 List<String> getLuiIdsInAtpByCluId(String cluId, String atpKey, ContextInfo context)
          Retrieves the list of LUI ids for the specified CLU and Time period.
 LuiLuiRelationInfo getLuiLuiRelation(String luiLuiRelationId, ContextInfo context)
          Retrieves the relationship information between LUIs given a specific relation instance.
 List<LuiLuiRelationInfo> getLuiLuiRelationsByLui(String luiId, ContextInfo context)
          Retrieves the list of relationship information for the specified LUI.
 List<LuiInfo> getLuisByIdList(List<String> luiIdList, ContextInfo context)
          Retrieves information about LUIs from a list of Ids.
 List<LuiInfo> getLuisByRelation(String relatedLuiId, String luLuRelationTypeKey, ContextInfo context)
          Retrieves the list of LUI information for the LUIs related to the specified LUI Id with a certain LU to LU relation type.
 List<LuiInfo> getLuisInAtpByCluId(String cluId, String atpKey, ContextInfo context)
          Retrieves the list of LUIs for the specified CLU and period.
 List<String> getRelatedLuiIdsByLuiId(String luiId, String luLuRelationTypeKey, ContextInfo context)
          Retrieves the list of related LUI Ids for the specified LUI Id and LU to LU relation type.
 List<LuiInfo> getRelatedLuisByLuiId(String luiId, String luLuRelationTypeKey, ContextInfo context)
          Retrieves the list of related LUI information for the specified LUI Id and LU to LU relation type (getLuisByRelation from the other direction).
 LuiInfo updateLui(String luiId, LuiInfo luiInfo, ContextInfo context)
          Updates an existing LUI.
 LuiLuiRelationInfo updateLuiLuiRelation(String luiLuiRelationId, LuiLuiRelationInfo luiLuiRelationInfo, ContextInfo context)
          Updates a relationship between two LUIs.
 LuiInfo updateLuiState(String luiId, String luState, ContextInfo context)
          Updates the state of the LUI.
 List<ValidationResultInfo> validateLui(String validationType, LuiInfo luiInfo, ContextInfo context)
          Validates a LUI.
 List<ValidationResultInfo> validateLuiLuiRelation(String validationType, LuiLuiRelationInfo luiLuiRelationInfo, ContextInfo context)
          Validates a relationship between LUIs.
 
Methods inherited from interface org.kuali.student.datadictionary.service.DataDictionaryService
getDataDictionaryEntry, getDataDictionaryEntryKeys
 
Methods inherited from interface org.kuali.student.common.service.TypeService
getAllowedTypesForType, getType, getTypeRelationsByOwnerType, getTypesByRefObjectURI
 

Method Detail

getLui

LuiInfo getLui(String luiId,
               ContextInfo context)
               throws DoesNotExistException,
                      InvalidParameterException,
                      MissingParameterException,
                      OperationFailedException
Retrieves information about a LUI.

Parameters:
luiId - identifier of the LUI
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
information about a LUI
Throws:
DoesNotExistException - lui not found
InvalidParameterException - invalid luiId
MissingParameterException - missing luiId
OperationFailedException - unable to complete request

getLuisByIdList

List<LuiInfo> getLuisByIdList(List<String> luiIdList,
                              ContextInfo context)
                              throws DoesNotExistException,
                                     InvalidParameterException,
                                     MissingParameterException,
                                     OperationFailedException
Retrieves information about LUIs from a list of Ids.

Parameters:
luiIdList - List of LUI identifiers
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
information about a list of LUIs
Throws:
DoesNotExistException - One or more luis not found
InvalidParameterException - One or more invalid luiIds
MissingParameterException - missing luiIdList
OperationFailedException - unable to complete request

getLuisInAtpByCluId

List<LuiInfo> getLuisInAtpByCluId(String cluId,
                                  String atpKey,
                                  ContextInfo context)
                                  throws DoesNotExistException,
                                         InvalidParameterException,
                                         MissingParameterException,
                                         OperationFailedException
Retrieves the list of LUIs for the specified CLU and period.

Parameters:
cluId - identifier of the CLU
atpKey - identifier for the academic time period
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI information
Throws:
DoesNotExistException - clu, atp not found
InvalidParameterException - invalid cluId, atpKey
MissingParameterException - missing cluId, atpKey
OperationFailedException - unable to complete request

getLuiIdsByCluId

List<String> getLuiIdsByCluId(String cluId,
                              ContextInfo context)
                              throws DoesNotExistException,
                                     InvalidParameterException,
                                     MissingParameterException,
                                     OperationFailedException
Retrieves the list of LUI ids for the specified CLU.

Parameters:
cluId - identifier of the CLU
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI identifiers
Throws:
DoesNotExistException - clu not found
InvalidParameterException - invalid cluId
MissingParameterException - missing cluId
OperationFailedException - unable to complete request

getLuiIdsInAtpByCluId

List<String> getLuiIdsInAtpByCluId(String cluId,
                                   String atpKey,
                                   ContextInfo context)
                                   throws DoesNotExistException,
                                          InvalidParameterException,
                                          MissingParameterException,
                                          OperationFailedException
Retrieves the list of LUI ids for the specified CLU and Time period.

Parameters:
cluId - identifier of the CLU
atpKey - identifier for the academic time period
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI identifiers
Throws:
DoesNotExistException - clu, atp not found
InvalidParameterException - invalid cluId, atpKey
MissingParameterException - missing cluId, atpKey
OperationFailedException - unable to complete request

getLuisByRelation

List<LuiInfo> getLuisByRelation(String relatedLuiId,
                                String luLuRelationTypeKey,
                                ContextInfo context)
                                throws InvalidParameterException,
                                       MissingParameterException,
                                       OperationFailedException
Retrieves the list of LUI information for the LUIs related to the specified LUI Id with a certain LU to LU relation type.

(getRelatedLuisByLuiId from the other direction)

Parameters:
relatedLuiId - identifier of the LUI
luLuRelationTypeKey - the LU to LU relation type
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI information, empty list if none
Throws:
InvalidParameterException - invalid relatedLuiId, luLuRelationTypeKey
MissingParameterException - missing relatedLuiId, luLuRelationTypeKey
OperationFailedException - unable to complete request

getLuiIdsByRelation

List<String> getLuiIdsByRelation(String relatedLuiId,
                                 String luLuRelationTypeKey,
                                 ContextInfo context)
                                 throws InvalidParameterException,
                                        MissingParameterException,
                                        OperationFailedException
Retrieves the list of LUI Ids for the specified related LUI Id and LU to LU relation type (getRelatedLuiIdsByLuiId from the other direction).

Parameters:
relatedLuiId - identifier of the LUI
luLuRelationTypeKey - the LU to LU relation type
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI identifiers, empty list of none found
Throws:
InvalidParameterException - invalid relatedLuiId, luLuRelationTypeKey
MissingParameterException - missing relatedLuiId, luLuRelationTypeKey
OperationFailedException - unable to complete request

getRelatedLuisByLuiId

List<LuiInfo> getRelatedLuisByLuiId(String luiId,
                                    String luLuRelationTypeKey,
                                    ContextInfo context)
                                    throws InvalidParameterException,
                                           MissingParameterException,
                                           OperationFailedException
Retrieves the list of related LUI information for the specified LUI Id and LU to LU relation type (getLuisByRelation from the other direction).

Parameters:
luiId - identifier of the LUI
luLuRelationTypeKey - the LU to LU relation type
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI information, empty list if none found
Throws:
InvalidParameterException - invalid luiId, luLuRelationTypeKey
MissingParameterException - missing luiId, luLuRelationTypeKey
OperationFailedException - unable to complete request

getRelatedLuiIdsByLuiId

List<String> getRelatedLuiIdsByLuiId(String luiId,
                                     String luLuRelationTypeKey,
                                     ContextInfo context)
                                     throws InvalidParameterException,
                                            MissingParameterException,
                                            OperationFailedException
Retrieves the list of related LUI Ids for the specified LUI Id and LU to LU relation type. (getLuiIdsByRelation from the other direction).

Parameters:
luiId - identifier of the LUI
luLuRelationTypeKey - the LU to LU relation type
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI identifier, empty list if none found
Throws:
InvalidParameterException - invalid luiId, luLuRelationTypeKey
MissingParameterException - missing luiId, luLuRelationTypeKey
OperationFailedException - unable to complete request

getLuiLuiRelation

LuiLuiRelationInfo getLuiLuiRelation(String luiLuiRelationId,
                                     ContextInfo context)
                                     throws DoesNotExistException,
                                            InvalidParameterException,
                                            MissingParameterException,
                                            OperationFailedException
Retrieves the relationship information between LUIs given a specific relation instance.

Parameters:
luiLuiRelationId - identifier of LUI to LUI relatio
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
information on the relation between two LUIs
Throws:
DoesNotExistException - luiLuiRelation not found
InvalidParameterException - invalid luiLuiRelationId
MissingParameterException - missing luiLuiRelationId
OperationFailedException - unable to complete request

getLuiLuiRelationsByLui

List<LuiLuiRelationInfo> getLuiLuiRelationsByLui(String luiId,
                                                 ContextInfo context)
                                                 throws DoesNotExistException,
                                                        InvalidParameterException,
                                                        MissingParameterException,
                                                        OperationFailedException
Retrieves the list of relationship information for the specified LUI.

Parameters:
luiId - identifier of the LUI
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
list of LUI to LUI relation information
Throws:
DoesNotExistException - lui not found
InvalidParameterException - invalid luiId
MissingParameterException - missing luiId
OperationFailedException - unable to complete request

validateLui

List<ValidationResultInfo> validateLui(String validationType,
                                       LuiInfo luiInfo,
                                       ContextInfo context)
                                       throws DoesNotExistException,
                                              InvalidParameterException,
                                              MissingParameterException,
                                              OperationFailedException
Validates a LUI. Depending on the value of validationType, this validation could be limited to tests on just the current object and its directly contained sub-objects or expanded to perform all tests related to this object. If an identifier is present for the LUI (and/or one of its contained sub-objects) and a record is found for that identifier, the validation checks if the LUI can be shifted to the new values. If an identifier is not present or a record cannot be found for the identifier, it is assumed that the record does not exist and as such, the checks performed will be much shallower, typically mimicking those performed by setting the validationType to the current object.

Parameters:
validationType - identifier of the extent of validation
luiInfo - LUI information to be tested.
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
results from performing the validation
Throws:
DoesNotExistException - validationTypeKey not found
InvalidParameterException - invalid validationTypeKey, luiInfo
MissingParameterException - missing validationTypeKey, luiInfo
OperationFailedException - unable to complete request

createLui

LuiInfo createLui(String cluId,
                  String atpKey,
                  LuiInfo luiInfo,
                  ContextInfo context)
                  throws AlreadyExistsException,
                         DataValidationErrorException,
                         DoesNotExistException,
                         InvalidParameterException,
                         MissingParameterException,
                         OperationFailedException,
                         PermissionDeniedException
Creates a new LUI.

Parameters:
cluId - identifier of the CLU for the LUI being created
atpKey - identifier of the academic time period for the LUI being created
luiInfo - information about the LUI being created
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
the created LUI information
Throws:
AlreadyExistsException - LUI already exists
DataValidationErrorException - One or more values invalid for this operation
DoesNotExistException - clu, atp not found
InvalidParameterException - invalid cluId, atpKey, luiInfo
MissingParameterException - missing cluId, atpKey, luiInfo
OperationFailedException - unable to complete request
PermissionDeniedException - authorization failure

updateLui

LuiInfo updateLui(String luiId,
                  LuiInfo luiInfo,
                  ContextInfo context)
                  throws DataValidationErrorException,
                         DoesNotExistException,
                         InvalidParameterException,
                         MissingParameterException,
                         OperationFailedException,
                         PermissionDeniedException,
                         VersionMismatchException
Updates an existing LUI.

Parameters:
luiId - identifier for the LUI to be updated
luiInfo - updated information about the LUI
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
the updated LUI information
Throws:
DataValidationErrorException - One or more values invalid for this operation
DoesNotExistException - lui not found
InvalidParameterException - invalid luiId, luiInfo
MissingParameterException - missing luiId, luiInfo
OperationFailedException - unable to complete request
PermissionDeniedException - authorization failure
VersionMismatchException - The action was attempted on an out of date version.

deleteLui

StatusInfo deleteLui(String luiId,
                     ContextInfo context)
                     throws DependentObjectsExistException,
                            DoesNotExistException,
                            InvalidParameterException,
                            MissingParameterException,
                            OperationFailedException,
                            PermissionDeniedException
Deletes a LUI record.

Parameters:
luiId - identifier for the LUI to be deleted
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
status of the operation
Throws:
DependentObjectsExistException - delete would leave orphaned objects or violate integrity constraints
DoesNotExistException - lui not found
InvalidParameterException - invalid luiId
MissingParameterException - missing luiId
OperationFailedException - unable to complete request
PermissionDeniedException - authorization failure

updateLuiState

LuiInfo updateLuiState(String luiId,
                       String luState,
                       ContextInfo context)
                       throws DataValidationErrorException,
                              DoesNotExistException,
                              InvalidParameterException,
                              MissingParameterException,
                              OperationFailedException,
                              PermissionDeniedException
Updates the state of the LUI.

Parameters:
luiId - identifier for the LUI to be updated
luState - New state for LUI. Value is expected to be constrained to those in the luState enumeration.
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
the updated LUI information
Throws:
DataValidationErrorException - New state not valid for existing state of LUI
DoesNotExistException - lui, luState not found
InvalidParameterException - invalid luiId, luState
MissingParameterException - missing luiId, luState
OperationFailedException - unable to complete request
PermissionDeniedException - authorization failure

validateLuiLuiRelation

List<ValidationResultInfo> validateLuiLuiRelation(String validationType,
                                                  LuiLuiRelationInfo luiLuiRelationInfo,
                                                  ContextInfo context)
                                                  throws DoesNotExistException,
                                                         InvalidParameterException,
                                                         MissingParameterException,
                                                         OperationFailedException
Validates a relationship between LUIs. Depending on the value of validationType, this validation could be limited to tests on just the current object and its directly contained sub-objects or expanded to perform all tests related to this object. If an identifier is present for the relationship (and/or one of its contained sub-objects) and a record is found for that identifier, the validation checks if the relationship can be shifted to the new values. If an identifier is not present or a record cannot be found for the identifier, it is assumed that the record does not exist and as such, the checks performed will be much shallower, typically mimicking those performed by setting the validationType to the current object.

Parameters:
validationType - identifier of the extent of validation
luiLuiRelationInfo - LUI to LUI relationship information to be tested.
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
results from performing the validation
Throws:
DoesNotExistException - validationTypeKey not found
InvalidParameterException - invalid validationTypeKey, luiLuiRelationInfo
MissingParameterException - missing validationTypeKey, luiLuiRelationInfo
OperationFailedException - unable to complete request

createLuiLuiRelation

LuiLuiRelationInfo createLuiLuiRelation(String luiId,
                                        String relatedLuiId,
                                        String luLuRelationTypeKey,
                                        LuiLuiRelationInfo luiLuiRelationInfo,
                                        ContextInfo context)
                                        throws AlreadyExistsException,
                                               CircularRelationshipException,
                                               DataValidationErrorException,
                                               DoesNotExistException,
                                               InvalidParameterException,
                                               MissingParameterException,
                                               OperationFailedException,
                                               PermissionDeniedException
Create a relationship between two LUIs.

Parameters:
luiId - identifier of the first LUI in the relationship
relatedLuiId - identifier of the second LUI in the relationship to be related to
luLuRelationTypeKey - the LU to LU relationship type of the relationship
luiLuiRelationInfo - information about the relationship between the two LUIs
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
the created LUI to LUI relation information
Throws:
AlreadyExistsException - relationship already exists
CircularRelationshipException - luiId equals relatedLuiId
DataValidationErrorException - One or more values invalid for this operation
DoesNotExistException - luiId, relatedLuiId, luLuRelationTypeKey not found
InvalidParameterException - invalid luiIds, luLuRelationTypeKey, luiLuiRelationInfo
MissingParameterException - missing luiIds, luLuRelationTypeKey, luiLuiRelationInfo
OperationFailedException - unable to complete request
PermissionDeniedException - authorization failure

updateLuiLuiRelation

LuiLuiRelationInfo updateLuiLuiRelation(String luiLuiRelationId,
                                        LuiLuiRelationInfo luiLuiRelationInfo,
                                        ContextInfo context)
                                        throws DataValidationErrorException,
                                               DoesNotExistException,
                                               InvalidParameterException,
                                               MissingParameterException,
                                               OperationFailedException,
                                               PermissionDeniedException,
                                               VersionMismatchException
Updates a relationship between two LUIs.

Parameters:
luiLuiRelationId - identifier of the LUI to LUI relation to update
luiLuiRelationInfo - changed information about the relationship between the two LUIs
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
the update LUI to LUI relation information
Throws:
DataValidationErrorException - One or more values invalid for this operation
DoesNotExistException - luiLuiRelation not found
InvalidParameterException - invalid luiLuiRelationId, luiLuiRelationInfo
MissingParameterException - missing luiLuiRelationId, luiLuiRelationInfo
OperationFailedException - unable to complete request
PermissionDeniedException - authorization failure
VersionMismatchException - The action was attempted on an out of date version.

deleteLuiLuiRelation

StatusInfo deleteLuiLuiRelation(String luiLuiRelationId,
                                ContextInfo context)
                                throws DoesNotExistException,
                                       InvalidParameterException,
                                       MissingParameterException,
                                       OperationFailedException,
                                       PermissionDeniedException
Deletes a relationship between two LUIs.

Parameters:
luiLuiRelationId - identifier of the LUI to LUI relation to delete
context - Context information containing the principalId and locale information about the caller of service operation
Returns:
status of the operation (success or failure)
Throws:
DoesNotExistException - luiLuiRelation not found
InvalidParameterException - invalid luiLuiRelationId
MissingParameterException - missing luiLuiRelationId
OperationFailedException - unable to complete request
PermissionDeniedException - authorization failure


Copyright © 2007-2011 The Kuali Foundation. All Rights Reserved.