| Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
| LuiPersonRelationService | 
  | 
  | 1.0;1 | 
| 1 |  /* | |
| 2 |   * Copyright 2009 The Kuali Foundation | |
| 3 |   * | |
| 4 |   * Licensed under the Educational Community License, Version 1.0 (the | |
| 5 |   * "License"); you may not use this file except in compliance with the | |
| 6 |   * License.  You may obtain a copy of the License at | |
| 7 |   * | |
| 8 |   * http://www.opensource.org/licenses/ecl1.php | |
| 9 |   * | |
| 10 |   * Unless required by applicable law or agreed to in writing, software | |
| 11 |   * distributed under the License is distributed on an "AS IS" BASIS, | |
| 12 |   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| 13 |   * See the License for the specific language governing permissions and | |
| 14 |   * limitations under the License. | |
| 15 |   */ | |
| 16 |  package org.kuali.student.enrollment.classI.lpr.service; | |
| 17 | ||
| 18 |  import java.util.List; | |
| 19 | ||
| 20 |  import javax.jws.WebParam; | |
| 21 |  import javax.jws.WebService; | |
| 22 |  import javax.jws.soap.SOAPBinding; | |
| 23 | ||
| 24 |  import org.kuali.student.enrollment.classI.lpr.dto.LuiPersonRelationInfo; | |
| 25 |  import org.kuali.student.r2.common.datadictionary.service.DataDictionaryService; | |
| 26 |  import org.kuali.student.r2.common.dto.ContextInfo; | |
| 27 |  import org.kuali.student.r2.common.dto.CriteriaInfo; | |
| 28 |  import org.kuali.student.r2.common.dto.StatusInfo; | |
| 29 |  import org.kuali.student.r2.common.dto.ValidationResultInfo; | |
| 30 |  import org.kuali.student.r2.common.exceptions.AlreadyExistsException; | |
| 31 |  import org.kuali.student.r2.common.exceptions.DataValidationErrorException; | |
| 32 |  import org.kuali.student.r2.common.exceptions.DisabledIdentifierException; | |
| 33 |  import org.kuali.student.r2.common.exceptions.DoesNotExistException; | |
| 34 |  import org.kuali.student.r2.common.exceptions.InvalidParameterException; | |
| 35 |  import org.kuali.student.r2.common.exceptions.MissingParameterException; | |
| 36 |  import org.kuali.student.r2.common.exceptions.OperationFailedException; | |
| 37 |  import org.kuali.student.r2.common.exceptions.PermissionDeniedException; | |
| 38 |  import org.kuali.student.r2.common.exceptions.ReadOnlyException; | |
| 39 |  import org.kuali.student.r2.common.exceptions.VersionMismatchException; | |
| 40 |  import org.kuali.student.r2.common.service.StateService; | |
| 41 |  import org.kuali.student.r2.common.service.TypeService; | |
| 42 |  import org.kuali.student.r2.common.util.constants.LuiPersonRelationServiceConstants; | |
| 43 | ||
| 44 |  /** | |
| 45 |   * The Lui Person Relationship (LPR) Service | |
| 46 |   * | |
| 47 |   * Maintains the relationship between a Learning Unit Instance and a Person. | |
| 48 |   * Depending on the type this service maintains relationships such as:<ul> | |
| 49 |   * <li>a student's registration in a course | |
| 50 |   * <li>a student's enrollment in a program (major or minor) | |
| 51 |   * <li>an instructor's assignment to teach a course | |
| 52 |   * <li>a faculty member's assignment as an advisor for a program | |
| 53 |   *  </ul> | |
| 54 |   *  | |
| 55 |   * Version: 1.0 (Dev) | |
| 56 |   * | |
| 57 |   * @Author Kamal | |
| 58 |   * @Since Tue Mar 01 15:53:51 PST 2011 | |
| 59 |   * @See <a href="https://wiki.kuali.org/display/KULSTU/LUI+Person+Relation+Service">LuiPersonRelationService</> | |
| 60 |   */ | |
| 61 |  @WebService(name = "LuiPersonRelationService", targetNamespace = LuiPersonRelationServiceConstants.NAMESPACE) | |
| 62 | @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)  | |
| 63 | public interface LuiPersonRelationService extends DataDictionaryService, TypeService, StateService {  | |
| 64 | ||
| 65 |      /** | |
| 66 |       * Retrieves the Relation for the specified LUI Person Relation | |
| 67 |       * | |
| 68 |       * @param luiPersonRelationId Identifier for the LUI Person Relation | |
| 69 |       * @param context             Context information containing the principalId and locale information about the caller of service operation | |
| 70 |       * @return LUI Person Relation information | |
| 71 |       * @throws DoesNotExistException     luiPersonRelationId not found | |
| 72 |       * @throws InvalidParameterException invalid luiPersonRelationId | |
| 73 |       * @throws MissingParameterException missing luiPersonRelationId | |
| 74 |       * @throws OperationFailedException  unable to complete request | |
| 75 |       * @throws PermissionDeniedException authorization failure | |
| 76 |       */ | |
| 77 | public LuiPersonRelationInfo fetchLuiPersonRelation(@WebParam(name = "luiPersonRelationId") String luiPersonRelationId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 78 | ||
| 79 |      /** | |
| 80 |       * Retrieves the Relation for the specified list of LUI Person Relation Ids | |
| 81 |       * | |
| 82 |       * @param luiPersonRelationIdList List of identifiers for LUI Person Relations | |
| 83 |       * @param context                 Context information containing the principalId and locale information about the caller of service operation | |
| 84 |       * @return List of LUI Person Relation information | |
| 85 |       * @throws DoesNotExistException     One or more luiPersonRelationIds not found | |
| 86 |       * @throws InvalidParameterException One or more invalid luiPersonRelationIds | |
| 87 |       * @throws MissingParameterException missing luiPersonRelationIdList | |
| 88 |       * @throws OperationFailedException  unable to complete request | |
| 89 |       * @throws PermissionDeniedException authorization failure | |
| 90 |       */ | |
| 91 | public List<LuiPersonRelationInfo> findLuiPersonRelationsByIdList(@WebParam(name = "luiPersonRelationIdList") List<String> luiPersonRelationIdList, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 92 | ||
| 93 |      /** | |
| 94 |       * Retrieves the LUI Ids for Person related to LUI | |
| 95 |       * | |
| 96 |       * @param personId              Identifier for the LUI Person Relation | |
| 97 |       * @param luiPersonRelationTypeKey Type of LUI Person Relation | |
| 98 |       * @param relationState         Relation State | |
| 99 |       * @param context               Context information containing the principalId and locale information about the caller of service operation | |
| 100 |       * @return Simple list of LUI Ids | |
| 101 |       * @throws DoesNotExistException       personId, luiPersonRelationTypeKey, relationState, person to LUI relationship not found | |
| 102 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 103 |       * @throws InvalidParameterException   invalid personId, luiPersonRelationTypeKey, relationState | |
| 104 |       * @throws MissingParameterException   missing personId, luiPersonRelationTypeKey, relationState | |
| 105 |       * @throws OperationFailedException    unable to complete request | |
| 106 |       * @throws PermissionDeniedException   authorization failure | |
| 107 |       */ | |
| 108 | public List<String> findLuiIdsRelatedToPerson(@WebParam(name = "personId") String personId, @WebParam(name = "luiPersonRelationTypeKey") String luiPersonRelationTypeKey, @WebParam(name = "relationState") String relationState, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, DisabledIdentifierException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 109 | ||
| 110 |      /** | |
| 111 |       * Retrieves Person Ids related to the specified LUI | |
| 112 |       * | |
| 113 |       * @param luiId                 Identifier for the LUI | |
| 114 |       * @param luiPersonRelationTypeKey Type of LUI Person Relation | |
| 115 |       * @param relationState         Relation State | |
| 116 |       * @param context               Context information containing the principalId and locale information about the caller of service operation | |
| 117 |       * @return Simple list of Person Ids | |
| 118 |       * @throws DoesNotExistException     luiId, luiPersonRelationTypeKey, relationState, LUI to person relationship not found | |
| 119 |       * @throws InvalidParameterException invalid luiId, luiPersonRelationTypeKey, relationState | |
| 120 |       * @throws MissingParameterException missing luiId, luiPersonRelationTypeKey, relationState | |
| 121 |       * @throws OperationFailedException  unable to complete request | |
| 122 |       * @throws PermissionDeniedException authorization failure | |
| 123 |       */ | |
| 124 | public List<String> findPersonIdsRelatedToLui(@WebParam(name = "luiId") String luiId, @WebParam(name = "luiPersonRelationTypeKey") String luiPersonRelationTypeKey, @WebParam(name = "relationState") String relationState, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 125 | ||
| 126 |      /** | |
| 127 |       * Retrieves Person Relation for LUI | |
| 128 |       * | |
| 129 |       * @param personId Identifier for person | |
| 130 |       * @param luiId    Identifier for LUI | |
| 131 |       * @param context  Context information containing the principalId and locale information about the caller of service operation | |
| 132 |       * @return List of LUI Person Relation info | |
| 133 |       * @throws DoesNotExistException       personId, luiId not found | |
| 134 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 135 |       * @throws InvalidParameterException   invalid personId, luiId | |
| 136 |       * @throws MissingParameterException   missing personId, luiId | |
| 137 |       * @throws OperationFailedException    unable to complete request | |
| 138 |       * @throws PermissionDeniedException   authorization failure | |
| 139 |       */ | |
| 140 | public List<LuiPersonRelationInfo> findLuiPersonRelations(@WebParam(name = "personId") String personId, @WebParam(name = "luiId") String luiId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, DisabledIdentifierException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 141 | ||
| 142 |      /** | |
| 143 |       * Retrieves LUI Person Relation Ids | |
| 144 |       * | |
| 145 |       * @param personId Identifier for person | |
| 146 |       * @param luiId    Identifier for LUI | |
| 147 |       * @param context  Context information containing the principalId and locale information about the caller of service operation | |
| 148 |       * @return List of LUI Person Relation display info | |
| 149 |       * @throws DoesNotExistException       personId, luiId not found | |
| 150 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 151 |       * @throws InvalidParameterException   invalid personId, luiId | |
| 152 |       * @throws MissingParameterException   missing personId, luiId | |
| 153 |       * @throws OperationFailedException    unable to complete request | |
| 154 |       * @throws PermissionDeniedException   authorization failure | |
| 155 |       */ | |
| 156 | public List<String> findLuiPersonRelationIds(@WebParam(name = "personId") String personId, @WebParam(name = "luiId") String luiId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, DisabledIdentifierException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 157 | ||
| 158 |      /** | |
| 159 |       * Retrieves LUI Person Relation for Person | |
| 160 |       * | |
| 161 |       * @param personId Identifier for person | |
| 162 |       * @param context  Context information containing the principalId and locale information about the caller of service operation | |
| 163 |       * @return List of LUI Person Relation info | |
| 164 |       * @throws DoesNotExistException       personId not found | |
| 165 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 166 |       * @throws InvalidParameterException   invalid personId | |
| 167 |       * @throws MissingParameterException   missing personId | |
| 168 |       * @throws OperationFailedException    unable to complete request | |
| 169 |       * @throws PermissionDeniedException   authorization failure | |
| 170 |       */ | |
| 171 | public List<LuiPersonRelationInfo> findLuiPersonRelationsForPerson(@WebParam(name = "personId") String personId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, DisabledIdentifierException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 172 | ||
| 173 |      /** | |
| 174 |       * Retrieves LUI Person Relation Ids for Person | |
| 175 |       * | |
| 176 |       * @param personId Identifier for person | |
| 177 |       * @param context  Context information containing the principalId and locale information about the caller of service operation | |
| 178 |       * @return Simple list of person relation identifiers | |
| 179 |       * @throws DoesNotExistException       personId not found | |
| 180 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 181 |       * @throws InvalidParameterException   invalid personId | |
| 182 |       * @throws MissingParameterException   missing personId | |
| 183 |       * @throws OperationFailedException    unable to complete request | |
| 184 |       * @throws PermissionDeniedException   authorization failure | |
| 185 |       */ | |
| 186 | public List<String> findLuiPersonRelationIdsForPerson(@WebParam(name = "personId") String personId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, DisabledIdentifierException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 187 | ||
| 188 |      /** | |
| 189 |       * Retrieves LUI Person Relation for a specified LUI | |
| 190 |       * | |
| 191 |       * @param luiId   Identifier for LUI | |
| 192 |       * @param context Context information containing the principalId and locale information about the caller of service operation | |
| 193 |       * @return List of LUI Person Relation info | |
| 194 |       * @throws DoesNotExistException     luiId not found | |
| 195 |       * @throws InvalidParameterException invalid luiId | |
| 196 |       * @throws MissingParameterException missing luiId | |
| 197 |       * @throws OperationFailedException  unable to complete request | |
| 198 |       * @throws PermissionDeniedException authorization failure | |
| 199 |       */ | |
| 200 | public List<LuiPersonRelationInfo> findLuiPersonRelationsForLui(@WebParam(name = "luiId") String luiId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 201 | ||
| 202 |      /** | |
| 203 |       * Retrieves LUIPersonRelation for LUI | |
| 204 |       * | |
| 205 |       * @param luiId   Identifier for LUI | |
| 206 |       * @param context Context information containing the principalId and locale information about the caller of service operation | |
| 207 |       * @return Simple list of LUI Person Relation identifiers | |
| 208 |       * @throws DoesNotExistException     luiId not found | |
| 209 |       * @throws InvalidParameterException invalid luiId | |
| 210 |       * @throws MissingParameterException missing luiId | |
| 211 |       * @throws OperationFailedException  unable to complete request | |
| 212 |       * @throws PermissionDeniedException authorization failure | |
| 213 |       */ | |
| 214 | public List<String> findLuiPersonRelationIdsForLui(@WebParam(name = "luiId") String luiId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 215 | ||
| 216 |      /** | |
| 217 |       * Validates the particular relation in a state for a Person and LUI | |
| 218 |       * | |
| 219 |       * @param validationType             Identifier of the extent of validation | |
| 220 |       * @param luiPersonRelationInfo      LuiPersonRelation to be validated | |
| 221 |       * @param context               Context information containing the principalId and locale information about the caller of service operation | |
| 222 |       * @return list of validation results, list should be be zero length if no validation rsults are generated | |
| 223 |       * @throws DoesNotExistException       luiPersonRelationInfo not found | |
| 224 |       * @throws InvalidParameterException   invalid luiPersonRelationInfo relationState | |
| 225 |       * @throws MissingParameterException   missing luiPersonRelationInfo | |
| 226 |       * @throws OperationFailedException    unable to complete request | |
| 227 |       * @throws PermissionDeniedException   authorization failure | |
| 228 |       */ | |
| 229 | public List<ValidationResultInfo> validateLuiPersonRelation(@WebParam(name = "validationType") String validationType,  | |
| 230 |              @WebParam(name = "luiPersonRelationInfo") LuiPersonRelationInfo luiPersonRelationInfo, | |
| 231 |              @WebParam(name = "context") ContextInfo context) | |
| 232 |              throws DoesNotExistException, | |
| 233 | InvalidParameterException,  | |
| 234 | MissingParameterException,  | |
| 235 | OperationFailedException,  | |
| 236 | PermissionDeniedException;  | |
| 237 | ||
| 238 |      /** | |
| 239 |       * Retrieves LUIs for an academic time period where the specified relation type and state would be valid for the specified person | |
| 240 |       * | |
| 241 |       * @param personId              Identifier for person | |
| 242 |       * @param luiPersonRelationTypeKey Type of luiPersonRelationI | |
| 243 |       * @param relationState         Relation State | |
| 244 |       * @param atpId                 Identifier for academic time period | |
| 245 |       * @param context               Context information containing the principalId and locale information about the caller of service operation | |
| 246 |       * @return List of LUIs | |
| 247 |       * @throws DoesNotExistException       personId, luiPersonRelationTypeKey, relationState, atpId not found | |
| 248 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 249 |       * @throws InvalidParameterException   invalid personId, luiPersonRelationTypeKey, relationState, atpId | |
| 250 |       * @throws MissingParameterException   missing personId, luiPersonRelationTypeKey, relationState, atpId | |
| 251 |       * @throws OperationFailedException    unable to complete request | |
| 252 |       * @throws PermissionDeniedException   authorization failure | |
| 253 |       */ | |
| 254 | public List<String> findAllValidLuisForPerson(@WebParam(name = "personId") String personId, @WebParam(name = "luiPersonRelationTypeKey") String luiPersonRelationTypeKey, @WebParam(name = "relationState") String relationState, @WebParam(name = "atpId") String atpId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, DisabledIdentifierException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 255 | ||
| 256 |      /** | |
| 257 |       * Retrieves detail of LUI Person Relation Ids | |
| 258 |       * | |
| 259 |       * @param criteria Criteria to be used for retrieval of multiple LUI Person Relation identifiers | |
| 260 |       * @param context                   Context information containing the principalId and locale information about the caller of service operation | |
| 261 |       * @return Simple list of LUI Person Relation identifiers | |
| 262 |       * @throws InvalidParameterException invalid relation criteria | |
| 263 |       * @throws MissingParameterException missing relation criteria | |
| 264 |       * @throws OperationFailedException  unable to complete request | |
| 265 |       * @throws PermissionDeniedException authorization failure | |
| 266 |       */ | |
| 267 | public List<String> searchForLuiPersonRelationIds(@WebParam(name = "criteria") CriteriaInfo criteria, @WebParam(name = "context") ContextInfo context) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 268 | ||
| 269 |      /** | |
| 270 |       * Creates relation between the specified Person and LUI | |
| 271 |       * | |
| 272 |       * @param personId              Person Identifier | |
| 273 |       * @param luiId                 LUI Identifier | |
| 274 |       * @param luiPersonRelationTypeKey Type of LUI to Person Relation | |
| 275 |       * @param luiPersonRelationInfo Information required to create the LUI Person relation | |
| 276 |       * @param context               Context information containing the principalId and locale information about the caller of service operation | |
| 277 |       * @return Structure containing LUI Person relation identifiers | |
| 278 |       * @throws AlreadyExistsException      relation already exists | |
| 279 |       * @throws DataValidationErrorException if luiPeronsRelationInfo is not valid | |
| 280 |       * @throws ReadOnlyException         attempt to update a read only attribute | |
| 281 |       * @throws DoesNotExistException       personId, luiId, relationState, luiPersonRelationTypeKey does not exist | |
| 282 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 283 |       * @throws InvalidParameterException   invalid personId, luiId, relationState, luiPersonRelationTypeKey, luiPersonRelationInfo | |
| 284 |       * @throws MissingParameterException   missing personId, luiId, relationState, luiPersonRelationTypeKey, luiPersonRelationInfo | |
| 285 |       * @throws OperationFailedException    unable to complete request | |
| 286 |       * @throws PermissionDeniedException   authorization failure | |
| 287 |       */ | |
| 288 | public String createLuiPersonRelation(@WebParam(name = "personId") String personId, @WebParam(name = "luiId") String luiId, @WebParam(name = "luiPersonRelationTypeKey") String luiPersonRelationTypeKey, @WebParam(name = "luiPersonRelationInfo") LuiPersonRelationInfo luiPersonRelationInfo, @WebParam(name = "context") ContextInfo context)  | |
| 289 |              throws DataValidationErrorException, | |
| 290 | AlreadyExistsException, DoesNotExistException, DisabledIdentifierException, ReadOnlyException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 291 | ||
| 292 |      /** | |
| 293 |       * Creates bulk relationships for one specified person. This is an all or nothing transaction - any error will invalidate the entire transaction. | |
| 294 |       * | |
| 295 |       * @param personId              Identifier for Person | |
| 296 |       * @param luiIdList             Simple list of LUI identifiers | |
| 297 |       * @param relationState         Relation state | |
| 298 |       * @param luiPersonRelationTypeKey Type of LUI Person relation | |
| 299 |       * @param luiPersonRelationInfo Information required to create the LUI Person relation | |
| 300 |       * @param context               Context information containing the principalId | |
| 301 |       *                              and locale information about the caller of service | |
| 302 |       *                              operation | |
| 303 |       * @return Structure containing LUI Person relation identifiers | |
| 304 |       * @throws AlreadyExistsException      relation already exists | |
| 305 |       * @throws DataValidationErrorException if luiPeronsRelationInfo is not valid | |
| 306 |       * @throws ReadOnlyException         attempt to update a read only attribute | |
| 307 |       * @throws DoesNotExistException       personId, luiId, relationState, luiPersonRelationTypeKey does not exist | |
| 308 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 309 |       * @throws InvalidParameterException   invalid personId, luiId, relationState, luiPersonRelationTypeKey, luiPersonRelationInfo | |
| 310 |       * @throws MissingParameterException   missing personId, luiId, relationState, luiPersonRelationTypeKey, luiPersonRelationInfo | |
| 311 |       * @throws OperationFailedException    unable to complete request | |
| 312 |       * @throws PermissionDeniedException   authorization failure | |
| 313 |       */ | |
| 314 | public List<String> createBulkRelationshipsForPerson(@WebParam(name = "personId") String personId,  | |
| 315 |              @WebParam(name = "luiIdList") List<String> luiIdList, | |
| 316 |              @WebParam(name = "relationState") String relationState, | |
| 317 |              @WebParam(name = "luiPersonRelationTypeKey") String luiPersonRelationTypeKey, | |
| 318 |              @WebParam(name = "luiPersonRelationInfo") LuiPersonRelationInfo luiPersonRelationInfo, | |
| 319 |              @WebParam(name = "context") ContextInfo context) | |
| 320 |              throws DataValidationErrorException, | |
| 321 | AlreadyExistsException,  | |
| 322 | DoesNotExistException,  | |
| 323 | DisabledIdentifierException,  | |
| 324 | ReadOnlyException,  | |
| 325 | InvalidParameterException,  | |
| 326 | MissingParameterException,  | |
| 327 | OperationFailedException,  | |
| 328 | PermissionDeniedException;  | |
| 329 | ||
| 330 |      /** | |
| 331 |       * Creates bulk relationships for one specified LUI. This is an all or nothing transaction - any error will invalidate the entire transaction. | |
| 332 |       * | |
| 333 |       * @param luiId                 Identifier for Lui | |
| 334 |       * @param personIdList          Simple list of Person identifiers | |
| 335 |       * @param relationState         Relation state | |
| 336 |       * @param luiPersonRelationTypeKey Type of LUI Person relation | |
| 337 |       * @param luiPersonRelationInfo Information required to create the LUI Person relation | |
| 338 |       * @param context               Context information containing the principalId | |
| 339 |       *                              and locale information about the caller of service | |
| 340 |       *                              operation | |
| 341 |       * @return Structure containing LUI Person relation identifiers | |
| 342 |       * @throws AlreadyExistsException      relation already exists | |
| 343 |       * @throws DoesNotExistException       personId, luiId, relationState, luiPersonRelationTypeKey does not exist | |
| 344 |       * @throws DisabledIdentifierException personId found, but has been retired | |
| 345 |       * @throws DataValidationErrorException errors validating luiPersonRelationInfo with all data filled in | |
| 346 |       * @throws InvalidParameterException   invalid personId, luiId, relationState, luiPersonRelationTypeKey, luiPersonRelationInfo | |
| 347 |       * @throws MissingParameterException   missing personId, luiId, relationState, luiPersonRelationTypeKey, luiPersonRelationInfo | |
| 348 |       * @throws OperationFailedException    unable to complete request | |
| 349 |       * @throws ReadOnlyException         attempt to update a read only attribute | |
| 350 |       * @throws PermissionDeniedException   authorization failure | |
| 351 |       */ | |
| 352 | public List<String> createBulkRelationshipsForLui(@WebParam(name = "luiId") String luiId,  | |
| 353 |              @WebParam(name = "personIdList") List<String> personIdList, | |
| 354 |              @WebParam(name = "relationState") String relationState, | |
| 355 |              @WebParam(name = "luiPersonRelationTypeKey") String luiPersonRelationTypeKey, | |
| 356 |              @WebParam(name = "luiPersonRelationInfo") LuiPersonRelationInfo luiPersonRelationInfo, | |
| 357 |              @WebParam(name = "context") ContextInfo context) | |
| 358 |              throws AlreadyExistsException, | |
| 359 | DataValidationErrorException,  | |
| 360 | DoesNotExistException,  | |
| 361 | DisabledIdentifierException,  | |
| 362 | ReadOnlyException,  | |
| 363 | InvalidParameterException,  | |
| 364 | MissingParameterException,  | |
| 365 | OperationFailedException,  | |
| 366 | PermissionDeniedException;  | |
| 367 | ||
| 368 |      /** | |
| 369 |       * Update relation between Person and LUI | |
| 370 |       * | |
| 371 |       * @param luiPersonRelationId   Identifier for the LUI Person Relation | |
| 372 |       * @param luiPersonRelationInfo Changed information about the LUI Person Relation | |
| 373 |       * @param context               Context information containing the principalId | |
| 374 |       *                              and locale information about the caller of service | |
| 375 |       *                              operation | |
| 376 |       * @return Updated information about the LUI Person Relation | |
| 377 |       * @throws DataValidationErrorException if luiPersonRelationInfo is not valid | |
| 378 |       * @throws DoesNotExistException     luiPersonRelationId does not exist | |
| 379 |       * @throws InvalidParameterException invalid luiPersonRelationId, luiPersonRelationInfo | |
| 380 |       * @throws MissingParameterException missing luiPersonRelationId, luiPersonRelationInfo | |
| 381 |       * @throws ReadOnlyException         attempt to update a read only attribute | |
| 382 |       * @throws OperationFailedException  unable to complete request | |
| 383 |       * @throws PermissionDeniedException authorization failure | |
| 384 |       * @throws VersionMismatchException if optimistic lock version ind has changed | |
| 385 |       */ | |
| 386 | public LuiPersonRelationInfo updateLuiPersonRelation(@WebParam(name = "luiPersonRelationId") String luiPersonRelationId,  | |
| 387 |              @WebParam(name = "luiPersonRelationInfo") LuiPersonRelationInfo luiPersonRelationInfo, | |
| 388 |              @WebParam(name = "context") ContextInfo context) | |
| 389 |              throws DoesNotExistException, | |
| 390 | DataValidationErrorException,  | |
| 391 | InvalidParameterException,  | |
| 392 | MissingParameterException,  | |
| 393 | ReadOnlyException,  | |
| 394 | OperationFailedException,  | |
| 395 | PermissionDeniedException,  | |
| 396 | VersionMismatchException;  | |
| 397 | ||
| 398 |      /** | |
| 399 |       * Deletes relation between the specified Person and LUI | |
| 400 |       * | |
| 401 |       * @param luiPersonRelationId Identifier for the LUI Person Relation | |
| 402 |       * @param context             Context information containing the principalId | |
| 403 |       *                            and locale information about the caller of service | |
| 404 |       *                            operation | |
| 405 |       * @return status of the operation (success, failed) | |
| 406 |       * @throws DoesNotExistException     luiPersonRelationId does not exist | |
| 407 |       * @throws InvalidParameterException invalid luiPersonRelationId | |
| 408 |       * @throws MissingParameterException missing luiPersonRelationId | |
| 409 |       * @throws OperationFailedException  unable to complete request | |
| 410 |       * @throws PermissionDeniedException authorization failure | |
| 411 |       */ | |
| 412 | public StatusInfo deleteLuiPersonRelation(@WebParam(name = "luiPersonRelationId") String luiPersonRelationId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;  | |
| 413 | }  |