1 /** 2 * Copyright 2010 The Kuali Foundation 3 * 4 * Licensed under the the Educational Community License, Version 1.0 5 * (the "License"); you may not use this file except in compliance 6 * with the 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 /** 17 * Copyright 2010 The Kuali Foundation 18 * 19 * Licensed under the the Educational Community License, Version 1.0 20 * (the "License"); you may not use this file except in compliance 21 * with the License. You may obtain a copy of the License at 22 * 23 * http://www.opensource.org/licenses/ecl1.php 24 * 25 * Unless required by applicable law or agreed to in writing, software 26 * distributed under the License is distributed on an "AS IS" BASIS, 27 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 28 * See the License for the specific language governing permissions and 29 * limitations under the License. 30 */ 31 32 package org.kuali.student.enrollment.lui.service; 33 34 import org.kuali.rice.core.api.criteria.QueryByCriteria; 35 import org.kuali.student.enrollment.lui.dto.LuiCapacityInfo; 36 import org.kuali.student.enrollment.lui.dto.LuiInfo; 37 import org.kuali.student.enrollment.lui.dto.LuiLuiRelationInfo; 38 import org.kuali.student.enrollment.lui.dto.LuiSetInfo; 39 import org.kuali.student.r2.common.dto.ContextInfo; 40 import org.kuali.student.r2.common.dto.StatusInfo; 41 import org.kuali.student.r2.common.dto.ValidationResultInfo; 42 import org.kuali.student.r2.common.exceptions.*; 43 import org.kuali.student.r2.common.util.constants.LuiServiceConstants; 44 45 import javax.jws.WebParam; 46 import javax.jws.WebService; 47 import javax.jws.soap.SOAPBinding; 48 import java.util.List; 49 50 /** 51 * Learning Unit Instance (LUI) Service 52 * 53 * Manages the creation of Instances of the canonical Learning unit. 54 * An instance is associated with a particular time period during 55 * which is is offered. 56 * 57 * This includes course and section offerings as well as program 58 * offerings 59 * 60 * @version 0.0.7 61 * 62 * @author tom 63 * @author Mezba (16/11/2012) 64 */ 65 66 @WebService(name = "LuiService", serviceName ="LuiService", portName = "LuiService", targetNamespace = LuiServiceConstants.NAMESPACE) 67 @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED) 68 69 public interface LuiService { 70 71 /** 72 * Retrieves a single Lui by a Lui Id. 73 * 74 * @param luiId the identifier for the Lui to be retrieved 75 * @param contextInfo information containing the principalId and 76 * locale information about the caller of service operation 77 * @return the Lui requested 78 * @throws DoesNotExistException luiId not found 79 * @throws InvalidParameterException contextInfo is not valid 80 * @throws MissingParameterException luiId or contextInfo is 81 * missing or null 82 * @throws OperationFailedException unable to complete request 83 * @throws PermissionDeniedException an authorization failure occurred 84 */ 85 public LuiInfo getLui(@WebParam(name = "luiId") String luiId, 86 @WebParam(name = "contextInfo") ContextInfo contextInfo) 87 throws DoesNotExistException, 88 InvalidParameterException, 89 MissingParameterException, 90 OperationFailedException, 91 PermissionDeniedException; 92 93 /** 94 * Retrieves a list of Luis from a list of Lui Ids. The 95 * returned list may be in any order and if duplicates Ids are 96 * supplied, a unique set may or may not be returned. 97 * 98 * @param luiIds a list of Lui identifiers 99 * @param contextInfo information containing the principalId and 100 * locale information about the caller of service operation 101 * @return a list of Luis 102 * @throws DoesNotExistException a luiId in the list was not found 103 * @throws InvalidParameterException contextInfo is not valid 104 * @throws MissingParameterException luiIds, an Id in luiIds, or 105 * contextInfo is missing or null 106 * @throws OperationFailedException unable to complete request 107 * @throws PermissionDeniedException an authorization failure occurred 108 */ 109 public List<LuiInfo> getLuisByIds(@WebParam(name = "luiIds") List<String> luiIds, 110 @WebParam(name = "contextInfo") ContextInfo contextInfo) 111 throws DoesNotExistException, 112 InvalidParameterException, 113 MissingParameterException, 114 OperationFailedException, 115 PermissionDeniedException; 116 117 /** 118 * Retrieves a list of Lui Ids by Lui Type. 119 * 120 * @param luiTypeKey an identifier for a Lui Type 121 * @param contextInfo information containing the principalId and 122 * locale information about the caller of service operation 123 * @return a list of Lui identifiers matching luiTypeKey or an 124 * empty list if none found 125 * @throws InvalidParameterException contextInfo is not valid 126 * @throws MissingParameterException luiTypeKey or contextInfo is 127 * missing or null 128 * @throws OperationFailedException unable to complete request 129 * @throws PermissionDeniedException an authorization failure occurred 130 */ 131 public List<String> getLuiIdsByType(@WebParam(name = "luiTypeKey") String luiTypeKey, 132 @WebParam(name = "contextInfo") ContextInfo contextInfo) 133 throws InvalidParameterException, 134 MissingParameterException, 135 OperationFailedException, 136 PermissionDeniedException; 137 138 /** 139 * Retrieves a list of Lui Ids by Clu. 140 * (the pattern says this should return the objects). 141 * 142 * @param cluId an identifier for the Clu 143 * @param contextInfo information containing the principalId and 144 * locale information about the caller of service operation 145 * @return list of Lui Ids for the Clu 146 * @throws InvalidParameterException contextInfo is not valid 147 * @throws MissingParameterException cluId or contextInfo is 148 * missing or null 149 * @throws OperationFailedException unable to complete request 150 * @throws PermissionDeniedException an authorization failure occurred 151 */ 152 public List<String> getLuiIdsByClu(@WebParam(name = "cluId") String cluId, 153 @WebParam(name = "contextInfo") ContextInfo contextInfo) 154 throws InvalidParameterException, 155 MissingParameterException, 156 OperationFailedException, 157 PermissionDeniedException; 158 159 /** 160 * Retrieves the list of Lui Ids for the specified atp and Lui 161 * Type. 162 * 163 * @param atpId an identifier for the Atp 164 * @param luiTypeKey an identifier for the Lui Type 165 * @param contextInfo information containing the principalId and 166 * locale information about the caller of service operation 167 * @return a list of identifiers of Luis offered in the given Atp 168 * of the specified luiType 169 * @throws InvalidParameterException contextInfo is not valid 170 * @throws MissingParameterException atpId, luiTypeKey, or contextInfo 171 * is missing or null 172 * @throws OperationFailedException unable to complete request 173 * @throws PermissionDeniedException an authorization failure occurred 174 */ 175 public List<String> getLuiIdsByAtpAndType(@WebParam(name = "atpId") String atpId, 176 @WebParam(name = "luiTypeKey") String luiTypeKey, 177 @WebParam(name = "contextInfo") ContextInfo contextInfo ) 178 throws InvalidParameterException, 179 MissingParameterException, 180 OperationFailedException, 181 PermissionDeniedException; 182 183 /** 184 * Retrieves the list of Luis for the specified atp and Lui Type. 185 * 186 * @param atpId an identifier for the Atp 187 * @param luiTypeKey an identifier for the Lui Type 188 * @param contextInfo information containing the principalId and 189 * locale information about the caller of service operation 190 * @return a list of Luis 191 * @throws InvalidParameterException contextInfo is not valid 192 * @throws MissingParameterException atpId, luiTypeKey, or 193 * contextInfo is missing or null 194 * @throws OperationFailedException unable to complete request 195 * @throws PermissionDeniedException an authorization failure occurred 196 */ 197 public List<LuiInfo> getLuisByAtpAndType (@WebParam(name = "atpId") String atpId, 198 @WebParam(name = "luiTypeKey") String luiTypeKey, 199 @WebParam(name = "contextInfo") ContextInfo contextInfo) 200 throws InvalidParameterException, 201 MissingParameterException, 202 OperationFailedException, 203 PermissionDeniedException; 204 205 /** 206 * Retrieves the list of Lui Ids for the specified Clu and Time 207 * period. 208 * 209 * @param cluId an identifier for the Clu 210 * @param atpId an identifier for the Atp 211 * @param contextInfo information containing the principalId and 212 * locale information about the caller of service operation 213 * @return a list of identifiers of Luis offered in atpId and 214 * related to cluId 215 * @throws InvalidParameterException contextInfo is not valid 216 * @throws MissingParameterException cluId, atpId, or contextInfo 217 * is missing or null 218 * @throws OperationFailedException unable to complete request 219 * @throws PermissionDeniedException an authorization failure occurred 220 */ 221 public List<String> getLuiIdsByAtpAndClu(@WebParam(name = "cluId") String cluId, 222 @WebParam(name = "atpId") String atpId, 223 @WebParam(name = "contextInfo") ContextInfo contextInfo) 224 throws InvalidParameterException, 225 MissingParameterException, 226 OperationFailedException, 227 PermissionDeniedException; 228 229 /** 230 * Retrieves the list of Luis for the specified Clu and Atp. 231 * 232 * @param cluId an identifier for the Clu 233 * @param atpId an identifier for the Atp 234 * @param contextInfo information containing the principalId and 235 * locale information about the caller of service operation 236 * @return a list of Luis offered in atpId and related to cluId 237 * @throws InvalidParameterException contextInfo is not valid 238 * @throws MissingParameterException cluId, atpId, or contextInfo 239 * is missing or null 240 * @throws OperationFailedException unable to complete request 241 * @throws PermissionDeniedException an authorization failure occurred 242 */ 243 public List<LuiInfo> getLuisByAtpAndClu(@WebParam(name = "cluId") String cluId, 244 @WebParam(name = "atpId") String atpId, 245 @WebParam(name = "contextInfo") ContextInfo contextInfo) 246 throws InvalidParameterException, 247 MissingParameterException, 248 OperationFailedException, 249 PermissionDeniedException; 250 251 /** 252 * Searches for Luis that meet the given search criteria and 253 * returns a list of Lui identifiers that meet the criteria. 254 * 255 * @param criteria the search criteria 256 * @param contextInfo information containing the principalId and 257 * locale information about the caller of service operation 258 * @return a list of Lui Ids matching the criteria 259 * @throws InvalidParameterException criteria or contextInfo is 260 * not valid 261 * @throws MissingParameterException criteria or contextInfo is 262 * missing or null 263 * @throws OperationFailedException unable to complete request 264 * @throws PermissionDeniedException an authorization failure occurred 265 */ 266 public List<String> searchForLuiIds(@WebParam(name = "criteria") QueryByCriteria criteria, 267 @WebParam(name = "contextInfo") ContextInfo contextInfo) 268 throws InvalidParameterException, 269 MissingParameterException, 270 OperationFailedException, 271 PermissionDeniedException; 272 273 /** 274 * Searches for Luis that meet the given search criteria. 275 * 276 * @param criteria the search criteria 277 * @param contextInfo information containing the principalId and 278 * locale information about the caller of service operation 279 * @return a list of Luis matching the criteria 280 * @throws InvalidParameterException criteria or contextInfo is 281 * not valid 282 * @throws MissingParameterException criteria or contextInfo is 283 * missing or null 284 * @throws OperationFailedException unable to complete request 285 * @throws PermissionDeniedException an authorization failure occurred 286 */ 287 public List<LuiInfo> searchForLuis(@WebParam(name = "criteria") QueryByCriteria criteria, 288 @WebParam(name = "contextInfo") ContextInfo contextInfo) 289 throws InvalidParameterException, 290 MissingParameterException, 291 OperationFailedException, 292 PermissionDeniedException; 293 294 /** 295 * Validates a Lui. Depending on the value of validationType, this 296 * validation could be limited to tests on just the current Lui 297 * and its directly contained sub-objects or expanded to perform 298 * all tests related to this Lui. If an identifier is present for 299 * the Lui (and/or one of its contained sub-objects) and a record 300 * is found for that identifier, the validation checks if the Lui 301 * can be updated to the new values. If an identifier is not 302 * present or a record does not exist, the validation checks if 303 * the object with the given data can be created. 304 * 305 * @param validationTypeKey the identifier for the validation Type 306 * @param cluId the identifier for the Clu to which the Lui is 307 * attached 308 * @param atpId the identifier for the Atp to which the Lui if 309 * offered 310 * @param luiTypeKey the identifier for the Lui Type 311 * @param luiInfo the object to be validated 312 * @param contextInfo information containing the principalId and 313 * locale information about the caller of service operation 314 * @return a list of validation results or an empty list if 315 * validation succeeded 316 * @throws DoesNotExistException validationTypeKey, cluId, atpId, 317 * or luiTypeKey is not found 318 * @throws InvalidParameterException luiInfo or contextInfo is not 319 * valid 320 * @throws MissingParameterException validationTypeKey, cluId, 321 * atpId, luiTypeKey, luiInfo, or contextInfo is missing 322 * or null 323 * @throws OperationFailedException unable to complete request 324 * @throws PermissionDeniedException an authorization failure occurred 325 */ 326 public List<ValidationResultInfo> validateLui(@WebParam(name = "validationTypeKey") String validationTypeKey, 327 @WebParam(name = "cluId") String cluId, @WebParam(name="atpId") String atpId, 328 @WebParam(name = "luiTypeKey") String luiTypeKey, 329 @WebParam(name = "luiInfo") LuiInfo luiInfo, 330 @WebParam(name = "contextInfo") ContextInfo contextInfo) 331 throws DoesNotExistException, 332 InvalidParameterException, 333 MissingParameterException, 334 OperationFailedException, 335 PermissionDeniedException;; 336 337 /** 338 * Creates a new LUI. The Lui Id, Type, Clu Id, Atp Id, and Meta 339 * information may not be set in the supplied data. 340 * 341 * @param cluId the identifier for the Clu 342 * @param atpId the identifier for the Atp 343 * @param luiTypeKey an identifier for the Type of the new Lui 344 * @param luiInfo the data with which to create the Lui 345 * @param contextInfo information containing the principalId and 346 * locale information about the caller of service operation 347 * @return the new Lui 348 * @throws DataValidationErrorException supplied data is invalid 349 * @throws DoesNotExistException cluId, atpId, or luiTypeKey is 350 * not found 351 * @throws InvalidParameterException luiInfo or contextInfo is not valid 352 * @throws MissingParameterException cluId, atpId, luiTypeKey, 353 * luiInfo, or contextInfo is missing or null 354 * @throws OperationFailedException unable to complete request 355 * @throws PermissionDeniedException an authorization failure occurred 356 * @throws ReadOnlyException an attempt at supplying information 357 * designated as read only 358 */ 359 public LuiInfo createLui(@WebParam(name = "cluId") String cluId, 360 @WebParam(name = "atpId") String atpId, 361 @WebParam(name = "luiTypeKey") String luiTypeKey, 362 @WebParam(name = "luiInfo") LuiInfo luiInfo, 363 @WebParam(name = "contextInfo") ContextInfo contextInfo) 364 throws DataValidationErrorException, 365 DoesNotExistException, 366 InvalidParameterException, 367 MissingParameterException, 368 OperationFailedException, 369 PermissionDeniedException, 370 ReadOnlyException; 371 372 /** 373 * Updates an existing Lui. The Lui Id, Type, Clu Id, Atp Id, and 374 * Meta information may not be changed. 375 * 376 * @param luiId the identifier for the LUI to be updated 377 * @param luiInfo the new data for the Lui 378 * @param contextInfo information containing the principalId and 379 * locale information about the caller of service operation 380 * @return the updated Lui 381 * @throws DataValidationErrorException supplied data is invalid 382 * @throws DoesNotExistException luiId not found 383 * @throws InvalidParameterException luiInfo or contextInfo is not valid 384 * @throws MissingParameterException luiId, luiInfo, or 385 * contextInfo is missing or null 386 * @throws OperationFailedException unable to complete request 387 * @throws PermissionDeniedException an authorization failure occurred 388 * @throws ReadOnlyException an attempt at changing information 389 * designated as read only 390 * @throws VersionMismatchException optimistic locking failure or 391 * the action was attempted on an out of date version 392 */ 393 public LuiInfo updateLui(@WebParam(name = "luiId") String luiId, 394 @WebParam(name = "luiInfo") LuiInfo luiInfo, 395 @WebParam(name = "contextInfo") ContextInfo contextInfo) 396 throws DataValidationErrorException, 397 DoesNotExistException, 398 InvalidParameterException, 399 MissingParameterException, 400 OperationFailedException, 401 PermissionDeniedException, 402 ReadOnlyException, 403 VersionMismatchException; 404 405 /** 406 * Deletes an existing Lui. 407 * 408 * @param luiId the identifier for the LUI to be deleted 409 * @param contextInfo information containing the principalId and 410 * locale information about the caller of service operation 411 * @return the status of the delete operation. This must always be true. 412 * @throws DependentObjectsExistException the delete operation 413 * would leave orphaned objects or violate integrity 414 * constraints 415 * @throws DoesNotExistException luiId not found 416 * @throws InvalidParameterException contextInfo is not valid 417 * @throws MissingParameterException luiId or contextInfo is 418 * missing or null 419 * @throws OperationFailedException unable to complete request 420 * @throws PermissionDeniedException an authorization failure occurred 421 */ 422 public StatusInfo deleteLui(@WebParam(name = "luiId") String luiId, 423 @WebParam(name = "contextInfo") ContextInfo contextInfo) 424 throws DependentObjectsExistException, 425 DoesNotExistException, 426 InvalidParameterException, 427 MissingParameterException, 428 OperationFailedException, 429 PermissionDeniedException; 430 431 /** 432 * Retrieves a single LuiLuiRelation by a LuiLuiRelation Id. 433 * 434 * @param luiLuiRelationId a unique identifier for the 435 * LuiLuiRelation to be retrieved 436 * @param contextInfo information containing the principalId and 437 * locale information about the caller of service operation 438 * @return the LuiLuiRelation requested 439 * @throws DoesNotExistException luiLuiRelationId is not found 440 * @throws InvalidParameterException contextInfo is not valid 441 * @throws MissingParameterException luiLuiRetaionId or 442 * contextInfo is missing or null 443 * @throws OperationFailedException unable to complete request 444 * @throws PermissionDeniedException an authorization failure occurred 445 */ 446 public LuiLuiRelationInfo getLuiLuiRelation(@WebParam(name = "luiLuiRelationId") String luiLuiRelationId, 447 @WebParam(name = "contextInfo") ContextInfo contextInfo) 448 throws DoesNotExistException, 449 InvalidParameterException, 450 MissingParameterException, 451 OperationFailedException, 452 PermissionDeniedException; 453 454 /** 455 * Retrieves a list of LuiLuiRelations from a list of 456 * LuiLuiRelation Ids. The returned list may be in any order and 457 * if duplicates Ids are supplied, a unique set may or may not be 458 * returned. 459 * 460 * @param luiLuiRelationIds a list of LuiLuiRelation identifiers 461 * @param contextInfo Context information containing the principalId 462 * and locale information about the caller of 463 * service operation 464 * @return information about a list of LuiLuiRelations 465 * @throws DoesNotExistException a luiLuiRelationId in the list 466 * was not found 467 * @throws InvalidParameterException contextInfo is not valid 468 * @throws MissingParameterException luiLuiRelationIds, a 469 * luiLuiRelationId in luiLuiRelationIds, or contextInfo 470 * is missing or null 471 * @throws OperationFailedException unable to complete request 472 * @throws PermissionDeniedException an authorization failure occurred 473 */ 474 public List<LuiLuiRelationInfo> getLuiLuiRelationsByIds(@WebParam(name = "luiLuiRelationIds") List<String> luiLuiRelationIds, 475 @WebParam(name = "contextInfo") ContextInfo contextInfo) 476 throws DoesNotExistException, 477 InvalidParameterException, 478 MissingParameterException, 479 OperationFailedException, 480 PermissionDeniedException; 481 482 /** 483 * Retrieves a list of LuiLuiRelation Ids by a LuiLuiRelation 484 * Type. 485 * 486 * @param luiLuiRelationTypeKey an identifier for a LuiLuiRelation 487 * Type 488 * @param contextInfo information containing the principalId and 489 * locale information about the caller of service operation 490 * @return a list of LuiLuiRelation identifiers 491 * @throws InvalidParameterException contextInfo is not valid 492 * @throws MissingParameterException luiLuiRelationTypeKey or 493 * contextInfo is missing or null 494 * @throws OperationFailedException unable to complete request 495 * @throws PermissionDeniedException an authorization failure occurred 496 */ 497 public List<String> getLuiLuiRelationIdsByType(@WebParam(name = "luiLuiRelationTypeKey") String luiLuiRelationTypeKey, 498 @WebParam(name = "contextInfo") ContextInfo contextInfo) 499 throws InvalidParameterException, 500 MissingParameterException, 501 OperationFailedException, 502 PermissionDeniedException; 503 504 /** 505 * Retrieves all LuiLuiRelations to the given Lui. 506 * 507 * @param luiId a unique identifier of the LUI 508 * @param contextInfo information containing the principalId and 509 * locale information about the caller of service operation 510 * @return the LuiLuiRelations to the Lui 511 * @throws InvalidParameterException contextInfo is not valid 512 * @throws MissingParameterException luiId or contextInfo is 513 * missing or null 514 * @throws OperationFailedException unable to complete request 515 * @throws PermissionDeniedException an authorization failure occurred 516 */ 517 public List<LuiLuiRelationInfo> getLuiLuiRelationsByLui(@WebParam(name = "luiId") String luiId, 518 @WebParam(name = "contextInfo") ContextInfo contextInfo) 519 throws InvalidParameterException, 520 MissingParameterException, 521 OperationFailedException, 522 PermissionDeniedException; 523 524 /** 525 * Retrieves all LuiLuiRelations between the given Luis. 526 * 527 * @param luiId a unique identifier of the LUI 528 * @param relatedLuiId a unique identifier of another LUI 529 * @param contextInfo information containing the principalId and 530 * locale information about the caller of service operation 531 * @return the LuiLuiRelations between the given Luis 532 * @throws InvalidParameterException contextInfo is not valid 533 * @throws MissingParameterException luiId, relatedLuiId, or 534 * contextInfo is missing or null 535 * @throws OperationFailedException unable to complete request 536 * @throws PermissionDeniedException an authorization failure occurred 537 */ 538 public List<LuiLuiRelationInfo> getLuiLuiRelationsByLuiAndRelatedLui(@WebParam(name = "luiId") String luiId, 539 @WebParam(name = "relatedLuiId") String relatedLuiId, 540 @WebParam(name = "contextInfo") ContextInfo contextInfo) 541 throws InvalidParameterException, 542 MissingParameterException, 543 OperationFailedException, 544 PermissionDeniedException; 545 546 /** 547 * Retrieves a list of LUI Ids for the specified related LUI Id 548 * and LU to LU relation type (getRelatedLuiIdsByLuiId from the 549 * other direction). 550 * 551 * @param relatedLuiId identifier of the LUI 552 * @param luiLuiRelationTypeKey the LU to LU relation type 553 * @param contextInfo Context information containing the principalId 554 * and locale information about the caller of service 555 * operation 556 * @return list of LUI identifiers, empty list of none found 557 * @throws InvalidParameterException invalid parameter 558 * @throws MissingParameterException missing parameter 559 * @throws OperationFailedException unable to complete request 560 * @throws PermissionDeniedException an authorization failure occurred 561 */ 562 public List<String> getLuiIdsByRelatedLuiAndRelationType(@WebParam(name = "relatedLuiId") String relatedLuiId, 563 @WebParam(name = "luiLuiRelationTypeKey") String luiLuiRelationTypeKey, 564 @WebParam(name = "contextInfo") ContextInfo contextInfo) 565 throws InvalidParameterException, 566 MissingParameterException, 567 OperationFailedException, 568 PermissionDeniedException; 569 570 /** 571 * Retrieves the list of LUI information for the LUIs related to 572 * the specified LUI Id with a certain LU to LU relation type. 573 * (getRelatedLuisByLuiId from the other direction) 574 * 575 * @param relatedLuiId identifier of the LUI 576 * @param luiLuiRelationTypeKey the LU to LU relation type 577 * @param contextInfo Context information containing the principalId 578 * and locale information about the caller of service 579 * operation 580 * @return list of LUI information, empty list if none 581 * @throws InvalidParameterException invalid parameter 582 * @throws MissingParameterException missing paremeter 583 * @throws OperationFailedException unable to complete request 584 * @throws PermissionDeniedException an authorization failure occurred 585 */ 586 public List<LuiInfo> getLuisByRelatedLuiAndRelationType(@WebParam(name = "relatedLuiId") String relatedLuiId, 587 @WebParam(name = "luiLuiRelationTypeKey") String luiLuiRelationTypeKey, 588 @WebParam(name = "contextInfo") ContextInfo contextInfo) 589 throws InvalidParameterException, 590 MissingParameterException, 591 OperationFailedException, 592 PermissionDeniedException; 593 594 /** 595 * Retrieves the list of related LUI Ids for the specified LUI Id 596 * and LU to LU relation type. (getLuiIdsByRelatedLuiAndRelationType from the other 597 * direction). 598 * 599 * @param luiId identifier of the LUI 600 * @param luiLuiRelationTypeKey the LU to LU relation type 601 * @param contextInfo Context information containing the principalId 602 * and locale information about the caller of service 603 * operation 604 * @return list of LUI identifier, empty list if none found 605 * @throws InvalidParameterException invalid parameter 606 * @throws MissingParameterException missing parameter 607 * @throws OperationFailedException unable to complete request 608 * @throws PermissionDeniedException an authorization failure occurred 609 */ 610 public List<String> getLuiIdsByLuiAndRelationType(@WebParam(name = "luiId") String luiId, 611 @WebParam(name = "luiLuiRelationTypeKey") String luiLuiRelationTypeKey, 612 @WebParam(name = "contextInfo") ContextInfo contextInfo) 613 throws InvalidParameterException, 614 MissingParameterException, 615 OperationFailedException, 616 PermissionDeniedException; 617 618 /** 619 * Retrieves the list of related LUI information for the specified 620 * LUI Id and LU to LU relation type (getLuisByRelatedLuiAndRelationType from the 621 * other direction). 622 * 623 * @param luiId identifier of the LUI 624 * @param luiLuiRelationTypeKey the LU to LU relation type 625 * @param contextInfo Context information containing the principalId 626 * and locale information about the caller of service 627 * operation 628 * @return list of LUI information, empty list if none found 629 * @throws InvalidParameterException invalid luiId, luiLuiRelationTypeKey 630 * @throws MissingParameterException missing luiId, luiLuiRelationTypeKey 631 * @throws OperationFailedException unable to complete request 632 * @throws PermissionDeniedException an authorization failure occurred 633 */ 634 public List<LuiInfo> getRelatedLuisByLuiAndRelationType(@WebParam(name = "luiId") String luiId, 635 @WebParam(name = "luiLuiRelationTypeKey") String luiLuiRelationTypeKey, 636 @WebParam(name = "contextInfo") ContextInfo contextInfo) 637 throws InvalidParameterException, 638 MissingParameterException, 639 OperationFailedException, 640 PermissionDeniedException; 641 642 /** 643 * Retrieves all LuiLuiRelations between a Lui and Luis of the 644 * given Lui Type. 645 * 646 * @param luiId a unique identifier for the Lui 647 * @param relatedLuiTypeKey a unique identifier for a Lui Type 648 * @param contextInfo information containing the principalId and 649 * locale information about the caller of service operation 650 * @return a list of LuiLuiRelations between luiId and Luis of 651 * relatedLuiTypeKey 652 * @throws InvalidParameterException contextInfo is not valid 653 * @throws MissingParameterException luiId, relatedLuiTypeKey, or 654 * contextInfo is missing or null 655 * @throws OperationFailedException unable to complete request 656 * @throws PermissionDeniedException an authorization failure occurred 657 */ 658 public List<LuiInfo> getLuiLuiRelationsByLuiAndRelatedLuiType(@WebParam(name = "luiId") String luiId, 659 @WebParam(name = "relatedLuiTypeKey") String relatedLuiTypeKey, 660 @WebParam(name = "contextInfo") ContextInfo contextInfo) 661 throws InvalidParameterException, 662 MissingParameterException, 663 OperationFailedException, 664 PermissionDeniedException; 665 666 /** 667 * Searches for LuiLuiRelations that meet the search criteria and 668 * returns a list of LuiLuiRelation identifiers that meet the 669 * criteria. 670 * 671 * @param criteria the search criteria 672 * @param contextInfo information containing the principalId and 673 * locale information about the caller of service operation 674 * @return list of LuiLuiRelationIds 675 * @throws InvalidParameterException criteria or contextInfo is 676 * not valid 677 * @throws MissingParameterException criteria or contextInfo is 678 * missing os null 679 * @throws OperationFailedException unable to complete request 680 * @throws PermissionDeniedException an authorization failure occurred 681 */ 682 public List<String> searchForLuiLuiRelationIds(@WebParam(name = "criteria") QueryByCriteria criteria, 683 @WebParam(name = "contextInfo") ContextInfo contextInfo) 684 throws InvalidParameterException, 685 MissingParameterException, 686 OperationFailedException, 687 PermissionDeniedException; 688 689 /** 690 * Searches for LuiLuiRelations that meet the search criteria and 691 * returns a list of LuiLuiRelations that meet the criteria. 692 * 693 * @param criteria the search criteria 694 * @param contextInfo information containing the principalId and 695 * locale information about the caller of service operation 696 * @return list of LuiLuiRelations 697 * @throws InvalidParameterException criteria or contextInfo is 698 * not valid 699 * @throws MissingParameterException criteria or contextInfo is 700 * missing os null 701 * @throws PermissionDeniedException an authorization failure occurred 702 */ 703 public List<LuiLuiRelationInfo> searchForLuiLuiRelations(@WebParam(name = "criteria") QueryByCriteria criteria, 704 @WebParam(name = "contextInfo") ContextInfo contextInfo) 705 throws InvalidParameterException, 706 MissingParameterException, 707 OperationFailedException, 708 PermissionDeniedException; 709 710 /** 711 * Validates a LuiLuiRelations. Depending on the value of 712 * validationType, this validation could be limited to tests on 713 * just the current LuiLuiRelation and its directly contained 714 * sub-objects or expanded to perform all tests related to this 715 * LuiLuiRelation. If an identifier is present for the 716 * LuiLuiRelation (and/or one of its contained sub-objects) and a 717 * record is found for that identifier, the validation checks if 718 * the LuiLuiRelation can be updated to the new values. If an 719 * identifier is not present or a record does not exist, the 720 * validation checks if the object with the given data can be 721 * created. 722 * 723 * @param validationTypeKey the identifier for the validation Type 724 * @param luiId the identifier for the Lui 725 * @param relatedLuiId the identifier for the related Lui 726 * @param luiLuiRelationTypeKey the identifier for LuiLuiRelation Type 727 * @param luiLuiRelationInfo the LuiLuiRelation to ve validated 728 * @param contextInfo information containing the principalId and 729 * locale information about the caller of service operation 730 * @return a list of validation results or an empty list if 731 * validation succeeded 732 * @throws DoesNotExistException validationTypeKey, luiId, 733 * relatedLuiId, or luiLuiRelationTypeKey is not found 734 * @throws InvalidParameterException luiLuiRelationInfo or 735 * contextInfo is missing or null 736 * @throws MissingParameterException validationTypeKey, luiId, 737 * relatedLuiId, luiLuiRelationTypeKey, 738 * luiLuiRelationInfo, or contextInfo is missing or null 739 * @throws OperationFailedException unable to complete request 740 * @throws PermissionDeniedException an authorization failure occurred 741 */ 742 public List<ValidationResultInfo> validateLuiLuiRelation(@WebParam(name = "validationTypeKey") String validationTypeKey, 743 @WebParam(name = "luiId") String luiId, @WebParam(name = "relatedLuiId") String relatedLuiId, 744 @WebParam(name = "luiLuiRelationTypeKey") String luiLuiRelationTypeKey, 745 @WebParam(name = "luiLuiRelationInfo") LuiLuiRelationInfo luiLuiRelationInfo, 746 @WebParam(name = "contextInfo") ContextInfo contextInfo) 747 throws DoesNotExistException, 748 InvalidParameterException, 749 MissingParameterException, 750 OperationFailedException, 751 PermissionDeniedException;; 752 753 /** 754 * Create new LuiLuiRelation. The LuiLuiRelation Id, Type, luiId, 755 * relatedLuiId, and Meta information may not be set in the 756 * supplied data. 757 * 758 * @param luiId identifier of the first LUI in the relationship 759 * @param relatedLuiId identifier of the second LUI in the 760 * relationship to be related 761 * @param luiLuiRelationTypeKey a unique key fo rthe Type or new 762 * LuiLuiRelation 763 * @param luiLuiRelationInfo the data with which to create the 764 * LuiLuiRelation 765 * @param contextInfo information containing the principalId and 766 * locale information about the caller of service operation 767 * @return the new LuiLuiRelation 768 * @throws CircularRelationshipException luiId equals relatedLuiId 769 * (why is this a contract failure?) 770 * @throws DataValidationErrorException supplied data is invalid 771 * @throws DoesNotExistException luiId, relatedLuiId, or 772 * luiLuiRelationTypeKey is not found 773 * @throws InvalidParameterException luiLuiRelationInfo ro 774 * contextInfo is not valid 775 * @throws MissingParameterException luiId, relatedLuiId, 776 * luiLuiRelationTypeKey, luiLuiRelationInfo, or 777 * contextInfo is missing or null 778 * @throws OperationFailedException unable to complete request 779 * @throws PermissionDeniedException an authorization failure occurred 780 * @throws ReadOnlyException an attempt at supplying information 781 * designated as read only 782 */ 783 public LuiLuiRelationInfo createLuiLuiRelation(@WebParam(name = "luiId") String luiId, 784 @WebParam(name = "relatedLuiId") String relatedLuiId, 785 @WebParam(name = "luiLuiRelationTypeKey") String luiLuiRelationTypeKey, 786 @WebParam(name = "luiLuiRelationInfo") LuiLuiRelationInfo luiLuiRelationInfo, 787 @WebParam(name = "contextInfo") ContextInfo contextInfo) 788 throws DataValidationErrorException, 789 DoesNotExistException, 790 InvalidParameterException, 791 MissingParameterException, 792 OperationFailedException, 793 PermissionDeniedException, 794 ReadOnlyException; 795 796 /** 797 * Updates an existing LuiLuiRelation. The LuiLuiRelation Id, 798 * luiId, relatedLuiId, and Meta information may not be changed. 799 * 800 * @param luiLuiRelationId the identifier for the LuiLuiRelation 801 * to be updated 802 * @param luiLuiRelationInfo the new data for the LuiLuiRelation 803 * @param contextInfo information containing the principalId and 804 * locale information about the caller of service operation 805 * @return the updated LuiLuiRelation 806 * @throws DataValidationErrorException supplied data is invalid 807 * @throws DoesNotExistException luiLuiRelationId is not found 808 * @throws InvalidParameterException luiLuiRelationInfo or contextInfo 809 * is not valid 810 * @throws MissingParameterException luiLuiRelationId, 811 * luiLuiRelationInfo, or contextInfo is missing or null 812 * @throws OperationFailedException unable to complete request 813 * @throws PermissionDeniedException an authorization failure occurred 814 * @throws ReadOnlyException an attempt at changing information 815 * designated as read only 816 * @throws VersionMismatchException optimistic locking failure or 817 * the action was attempted on an out of date version 818 */ 819 public LuiLuiRelationInfo updateLuiLuiRelation(@WebParam(name = "luiLuiRelationId") String luiLuiRelationId, 820 @WebParam(name = "luiLuiRelationInfo") LuiLuiRelationInfo luiLuiRelationInfo, 821 @WebParam(name = "contextInfo") ContextInfo contextInfo) 822 throws DataValidationErrorException, 823 DoesNotExistException, 824 InvalidParameterException, 825 MissingParameterException, 826 OperationFailedException, 827 PermissionDeniedException, 828 ReadOnlyException, 829 VersionMismatchException; 830 831 /** 832 * Deletes an existing LuiLuiRelation. 833 * 834 * @param luiLuiRelationId identifier or the LuiLuiRelation to be 835 * deleted 836 * @param contextInfo information containing the principalId and 837 * locale information about the caller of service operation 838 * @return the status of the delete operation. This must always be true. 839 * @throws DoesNotExistException luiLuiRelationId not found 840 * @throws InvalidParameterException contextInfo is not valid 841 * @throws MissingParameterException luiLuiRelationId 842 * or contextInfo is missing or null 843 * @throws OperationFailedException unable to complete request 844 * @throws PermissionDeniedException an authorization failure occurred 845 */ 846 public StatusInfo deleteLuiLuiRelation(@WebParam(name = "luiLuiRelationId") String luiLuiRelationId, 847 @WebParam(name = "contextInfo") ContextInfo contextInfo) 848 throws DoesNotExistException, 849 InvalidParameterException, 850 MissingParameterException, 851 OperationFailedException, 852 PermissionDeniedException; 853 854 /** 855 * Retrieves a single LuiCapacity by a LuiCapacity Id. 856 * 857 * @param luiCapacityId the identifier for the LuiCapacity to be 858 * retrieved 859 * @param contextInfo information containing the principalId and 860 * locale information about the caller of service operation 861 * @return the LuiCapacity requested 862 * @throws DoesNotExistException luiCapacityId not found 863 * @throws InvalidParameterException contextInfo is not valid 864 * @throws MissingParameterException luiCapacityId or contextInfo 865 * is missing or null 866 * @throws OperationFailedException unable to complete request 867 * @throws PermissionDeniedException an authorization failure occurred 868 */ 869 public LuiCapacityInfo getLuiCapacity(@WebParam(name = "luiCapacityId") String luiCapacityId, 870 @WebParam(name = "contextInfo") ContextInfo contextInfo) 871 throws DoesNotExistException, 872 InvalidParameterException, 873 MissingParameterException, 874 OperationFailedException, 875 PermissionDeniedException; 876 877 /** 878 * Retrieves a list of LuiCapacity from a list of LuiCapacity 879 * Ids. The returned list may be in any order and if duplicate Ids 880 * are supplied, a unique set may or may not be returned. 881 * 882 * @param luiCapacityIds a list of LuiCapacity identifiers 883 * @param contextInfo information containing the principalId and 884 * locale information about the caller of service operation 885 * @return a list of LuiCapacities 886 * @throws DoesNotExistException a luiCapacityId in the list was 887 * not found 888 * @throws InvalidParameterException contextInfo is not valid 889 * @throws MissingParameterException luiCapacityIds, an Id in 890 * luiCapacityIds, or contextInfo is missing or null 891 * @throws OperationFailedException unable to complete request 892 * @throws PermissionDeniedException an authorization failure occurred 893 */ 894 public List<LuiCapacityInfo> getLuiCapacitiesByIds(@WebParam(name = "luiCapacityIds") List<String> luiCapacityIds, 895 @WebParam(name = "contextInfo") ContextInfo contextInfo) 896 throws DoesNotExistException, 897 InvalidParameterException, 898 MissingParameterException, 899 OperationFailedException, 900 PermissionDeniedException; 901 902 /** 903 * Retrieves a list of LuiCapacity Ids by LuiCapacity Type. 904 * 905 * @param luiCapacityTypeKey a unique identifier for a LuiCapacity Type 906 * @param contextInfo information containing the principalId and 907 * locale information about the caller of service operation 908 * @return information about a list of Lui Capacities 909 * @throws InvalidParameterException contextInfo is not valid 910 * @throws MissingParameterException luiCapacityTypeKey or 911 * contextInfo is missing or null 912 * @throws OperationFailedException unable to complete request 913 * @throws PermissionDeniedException an authorization failure occurred 914 */ 915 public List<String> getLuiCapacityIdsByType(@WebParam(name = "luiCapacityTypeKey") String luiCapacityTypeKey, 916 @WebParam(name = "contextInfo") ContextInfo contextInfo) 917 throws InvalidParameterException, 918 MissingParameterException, 919 OperationFailedException, 920 PermissionDeniedException; 921 922 /** 923 * Retrieves LuiCapacities associated with a Lui. 924 * 925 * @param luiId a unique identifier for a Lui 926 * @param contextInfo information containing the principalId and 927 * locale information about the caller of service operation 928 * @return a list of LuiCapacities associated with the given Lui 929 * @throws InvalidParameterException contextInfo is not valid 930 * @throws MissingParameterException luiId or contextInfo is 931 * missing or null 932 * @throws OperationFailedException unable to complete request 933 * @throws PermissionDeniedException an authorization failure occurred 934 */ 935 public List<LuiCapacityInfo> getLuiCapacitiesByLui(@WebParam(name = "luiId") String luiId, 936 @WebParam(name = "contextInfo") ContextInfo contextInfo) 937 throws InvalidParameterException, 938 MissingParameterException, 939 OperationFailedException, 940 PermissionDeniedException; 941 942 /** 943 * Searches for LuiCapacities that meet the search criteria and 944 * returns a list of LuiCapacity identifiers that meet the 945 * criteria. 946 * 947 * @param criteria the search criteria 948 * @param contextInfo information containing the principalId and 949 * locale information about the caller of service operation 950 * @return list of LuiCapacity Ids 951 * @throws InvalidParameterException criteria or contextInfo is 952 * not valid 953 * @throws MissingParameterException criteria or contextInfo is 954 * missing or null 955 * @throws OperationFailedException unable to complete request 956 * @throws PermissionDeniedException an authorization failure occurred 957 */ 958 public List<String> searchForLuiCapacityIds(@WebParam(name = "criteria") QueryByCriteria criteria, 959 @WebParam(name = "contextInfo") ContextInfo contextInfo) 960 throws InvalidParameterException, 961 MissingParameterException, 962 OperationFailedException, 963 PermissionDeniedException; 964 965 /** 966 * Searches for LuiCapacities that meet the search criteria and 967 * returns a list of LuiCapacities that meet the criteria. 968 * 969 * @param criteria the search criteria 970 * @param contextInfo information containing the principalId and 971 * locale information about the caller of service operation 972 * @return list of LuiCapacitiess 973 * @throws InvalidParameterException criteria or contextInfo is 974 * not valid 975 * @throws MissingParameterException criteria or contextInfo is 976 * missing or null 977 * @throws OperationFailedException unable to complete request 978 * @throws PermissionDeniedException an authorization failure occurred 979 */ 980 public List<LuiCapacityInfo> searchForLuiCapacities(@WebParam(name = "criteria") QueryByCriteria criteria, 981 @WebParam(name = "contextInfo") ContextInfo contextInfo) 982 throws InvalidParameterException, 983 MissingParameterException, 984 OperationFailedException, 985 PermissionDeniedException; 986 987 /** 988 * Validates a LuiCapacity. Depending on the value of 989 * validationType, this validation could be limited to tests on 990 * just the current LuiCapacity and its directly contained 991 * sub-objects or expanded to perform all tests related to this 992 * LuiCapacity. If an identifier is present for the LuiCapacity 993 * (and/or one of its contained sub-objects) and a record is 994 * found for that identifier, the validation checks if the 995 * LuiCpacity can be updated to the new values. If an identifier 996 * is not present or a record does not exist, the validation 997 * checks if the object with the given data can be created. 998 * 999 * @param validationTypeKey the identifier for the validation Type 1000 * @param luiCapacityInfo the LuiCapacity to be validated 1001 * @param contextInfo information containing the principalId and 1002 * locale information about the caller of service operation 1003 * @return a list of validation results or an empty list if validation succeeded 1004 * @throws DoesNotExistException validationTypeKey or 1005 * luiCapacityTypeKey not found 1006 * @throws InvalidParameterException luiInfo or contextInfo is not 1007 * valid 1008 * @throws MissingParameterException validationTypeKey, luiInfo, 1009 * or contextInfo is missing or null 1010 * @throws PermissionDeniedException an authorization failure occurred 1011 */ 1012 public List<ValidationResultInfo> validateLuiCapacity(@WebParam(name = "validationTypeKey") String validationTypeKey, 1013 @WebParam(name = "luiCapacityTypeKey") String luiCapacityTypeKey, 1014 @WebParam(name = "luiCapacityInfo") LuiCapacityInfo luiCapacityInfo, 1015 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1016 throws DoesNotExistException, 1017 InvalidParameterException, 1018 MissingParameterException, 1019 OperationFailedException, 1020 PermissionDeniedException; 1021 1022 /** 1023 * Creates a new LuiCapacity. The LuiCapacity Id, Type, and Meta 1024 * information may not be set in the supplied data. 1025 * 1026 * @param luiCapacityTypeKey an identifier for the Type of the new 1027 * LuiCapacity 1028 * @param luiCapacityInfo the data with which to create the 1029 * LuiCapacity 1030 * @param contextInfo information containing the principalId and 1031 * locale information about the caller of service operation 1032 * @return the new LuiCapacity 1033 * @throws DataValidationErrorException supplied data is invalid 1034 * @throws DoesNotExistException luiCapacityTypeKey not found 1035 * @throws InvalidParameterException luiCapacityInfo or 1036 * contextInfo is not valid 1037 * @throws MissingParameterException luiCapacityTypeKey, 1038 * luiCapacityInfo, or contextInfo is missing or null 1039 * @throws OperationFailedException unable to complete request 1040 * @throws PermissionDeniedException an authorization failure occurred 1041 * @throws ReadOnlyException an attempt at supplying information 1042 * designated as read only 1043 */ 1044 public LuiCapacityInfo createLuiCapacity(@WebParam(name = "luiCapacityTypeKey") String luiCapacityTypeKey, 1045 @WebParam(name = "luiCapacityInfo") LuiCapacityInfo luiCapacityInfo, 1046 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1047 throws DataValidationErrorException, 1048 DoesNotExistException, 1049 InvalidParameterException, 1050 MissingParameterException, 1051 OperationFailedException, 1052 PermissionDeniedException, 1053 ReadOnlyException; 1054 1055 /** 1056 * Updates an existing LuiCapacity. The LuiCapacity Id, Type, and 1057 * Meta information may not be changed. 1058 * 1059 * @param luiCapacityId the identifier for the LuiCapacity to be 1060 * updated 1061 * @param luiCapacityInfo the new data for the LuiCapacity 1062 * @param contextInfo information containing the principalId and 1063 * locale information about the caller of service operation 1064 * @return the updated LuiCapacity 1065 * @throws DataValidationErrorException supplied data is invalid 1066 * @throws DoesNotExistException luiCapacityId not found 1067 * @throws InvalidParameterException luiCapacityInfo or contextInfo 1068 * is not valid 1069 * @throws MissingParameterException luiCapacityId, 1070 * luiCapacityInfo, or contextInfo is missing or null 1071 * @throws OperationFailedException unable to complete request 1072 * @throws PermissionDeniedException an authorization failure occurred 1073 * @throws ReadOnlyException an attempt at changing information 1074 * designated as read only 1075 * @throws VersionMismatchException optimistic locking failure or 1076 * the action was attempted on an out of date version 1077 */ 1078 public LuiCapacityInfo updateLuiCapacity(@WebParam(name = "luiCapacityId") String luiCapacityId, 1079 @WebParam(name = "luiCapacityInfo") LuiCapacityInfo luiCapacityInfo, 1080 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1081 throws DataValidationErrorException, 1082 DoesNotExistException, 1083 InvalidParameterException, 1084 MissingParameterException, 1085 OperationFailedException, 1086 PermissionDeniedException, 1087 ReadOnlyException, 1088 VersionMismatchException; 1089 1090 /** 1091 * Deletes an existing LuiCapacity. 1092 * 1093 * @param luiCapacityId the identifier for the LuiCapacity to be 1094 * deleted 1095 * @param contextInfo information containing the principalId and 1096 * locale information about the caller of service operation 1097 * @return the status of the delete operation. This must always be 1098 * true. 1099 * @throws DoesNotExistException luiCapacityId not found 1100 * @throws InvalidParameterException contextInfo is invalid 1101 * @throws MissingParameterException luiCapacityId or contextInfo 1102 * is missing or null 1103 * @throws OperationFailedException unable to complete request 1104 * @throws PermissionDeniedException an authorization failure occurred 1105 */ 1106 public StatusInfo deleteLuiCapacity(@WebParam(name = "luiCapacityId") String luiCapacityId, 1107 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1108 throws DoesNotExistException, 1109 InvalidParameterException, 1110 MissingParameterException, 1111 OperationFailedException, 1112 PermissionDeniedException; 1113 1114 /** 1115 * Retrieves information on a Lui set. 1116 * 1117 * @param luiSetId Identifier of the Lui set 1118 * @param contextInfo Context information containing the principalId and 1119 * locale information about the caller of service 1120 * operation 1121 * @return The retrieved Lui set information 1122 * @throws DoesNotExistException LuiSetId not found 1123 * @throws InvalidParameterException invalid contextInfo 1124 * @throws MissingParameterException missing LuiSetId or contextInfo 1125 * @throws OperationFailedException unable to complete request 1126 * @throws PermissionDeniedException authorization failure 1127 */ 1128 public LuiSetInfo getLuiSet(@WebParam(name = "luiSetId") String luiSetId, 1129 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1130 throws DoesNotExistException, 1131 InvalidParameterException, 1132 MissingParameterException, 1133 OperationFailedException, 1134 PermissionDeniedException; 1135 1136 /** 1137 * Retrieve information on Lui sets from a list of LuiSet Ids. 1138 * 1139 * @param luiSetIds List of identifiers of Lui sets 1140 * @param contextInfo Context information containing the principalId and 1141 * locale information about the caller of service 1142 * operation 1143 * @return The retrieved list of Lui set information 1144 * @throws DoesNotExistException One or more LuiSets not found 1145 * @throws InvalidParameterException invalid contextInfo 1146 * @throws MissingParameterException missing LuiSetIds or contextInfo 1147 * @throws OperationFailedException unable to complete request 1148 * @throws PermissionDeniedException authorization failure 1149 */ 1150 public List<LuiSetInfo> getLuiSetsByIds(@WebParam(name = "luiSetIds") List<String> luiSetIds, 1151 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1152 throws DoesNotExistException, 1153 InvalidParameterException, 1154 MissingParameterException, 1155 OperationFailedException, 1156 PermissionDeniedException; 1157 1158 1159 /** 1160 * Given a Lui, retrieves the LuiSets that it belongs to. 1161 * 1162 * @param luiId the identifier for the Lui 1163 * @param contextInfo Context information containing the principalId and 1164 * locale information about the caller of service 1165 * operation 1166 * @return The retrieved list of LuiSets that the Lui with specified luiId belongs to (or an empty list if the Lui isn't found) 1167 * @throws InvalidParameterException invalid contextInfo 1168 * @throws MissingParameterException missing luiId or contextInfo 1169 * @throws OperationFailedException unable to complete request 1170 * @throws PermissionDeniedException authorization failure 1171 */ 1172 public List<LuiSetInfo> getLuiSetsByLui(@WebParam(name = "luiId") String luiId, 1173 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1174 throws InvalidParameterException, 1175 MissingParameterException, 1176 OperationFailedException, 1177 PermissionDeniedException; 1178 1179 /** 1180 * Retrieves the list of Lui Identifiers within a Lui Set. 1181 * 1182 * @param luiSetId Identifier of the Lui set 1183 * @param contextInfo Context information containing the principalId and 1184 * locale information about the caller of service 1185 * operation 1186 * @return The retrieved list of Lui Ids within the specified Lui set 1187 * @throws DoesNotExistException LuiSetId not found 1188 * @throws InvalidParameterException invalid contextInfo 1189 * @throws MissingParameterException missing LuiSetId or contextInfo 1190 * @throws OperationFailedException unable to complete request 1191 * @throws PermissionDeniedException authorization failure 1192 */ 1193 public List<String> getLuiIdsFromLuiSet(@WebParam(name = "luiSetId") String luiSetId, 1194 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1195 throws DoesNotExistException, 1196 InvalidParameterException, 1197 MissingParameterException, 1198 OperationFailedException, 1199 PermissionDeniedException; 1200 1201 /** 1202 * Retrieves a list of LuiSet Ids by Lui Type. 1203 * 1204 * @param luiSetTypeKey type of the Lui set to be created 1205 * @param contextInfo information containing the principalId and 1206 * locale information about the caller of service operation 1207 * @return a list of Lui identifiers matching luiTypeKey or an 1208 * empty list if none found 1209 * @throws InvalidParameterException contextInfo is not valid 1210 * @throws MissingParameterException luiTypeKey or contextInfo is 1211 * missing or null 1212 * @throws OperationFailedException unable to complete request 1213 * @throws PermissionDeniedException an authorization failure occurred 1214 */ 1215 public List<String> getLuiSetIdsByType(@WebParam(name = "luiSetTypeKey") String luiSetTypeKey, 1216 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1217 throws InvalidParameterException, 1218 MissingParameterException, 1219 OperationFailedException, 1220 PermissionDeniedException; 1221 1222 1223 /** 1224 * Validates information about a Lui set. Depending on the value of 1225 * validationTypeKey, this validation could be limited to tests on just the 1226 * current object and its directly contained sub-objects or expanded to 1227 * perform all tests related to this object. If an identifier is present for 1228 * the Lui set (and/or one of its contained sub-objects) and a record is 1229 * found for that identifier, the validation checks if the Lui set can be 1230 * shifted to the new values. If an identifier is not present or a record 1231 * cannot be found for the identifier, it is assumed that the record does 1232 * not exist and as such, the checks performed will be much shallower, 1233 * typically mimicking those performed by setting the validationType to the 1234 * current object. 1235 * 1236 * @param validationTypeKey identifier of the extent of validation 1237 * @param luiSetTypeKey type of the Lui set to be created 1238 * @param LuiSetInfo Lui set information to be tested. 1239 * @param contextInfo Context information containing the principalId 1240 * and locale information about the caller of 1241 * service operation 1242 * @return results from performing the validation 1243 * @throws DoesNotExistException validationTypeKey or LuiSetTypeKey not 1244 * found 1245 * @throws InvalidParameterException invalid LuiSetInfo or contextInfo 1246 * @throws MissingParameterException missing validationTypeKey, LuiSetTypeKey, 1247 * LuiSetInfo or contextInfo 1248 * @throws OperationFailedException unable to complete request 1249 * @throws PermissionDeniedException authorization failure 1250 */ 1251 public List<ValidationResultInfo> validateLuiSet(@WebParam(name = "validationTypeKey") String validationTypeKey, 1252 @WebParam(name = "luiSetTypeKey") String luiSetTypeKey, 1253 @WebParam(name = "LuiSetInfo") LuiSetInfo LuiSetInfo, 1254 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1255 throws DoesNotExistException, 1256 InvalidParameterException, 1257 MissingParameterException, 1258 OperationFailedException, 1259 PermissionDeniedException; 1260 1261 /** 1262 * Creates a Lui set. 1263 * 1264 * @param luiSetTypeKey type of the Lui set to be created 1265 * @param luiSetInfo information required to create a Lui set 1266 * @param contextInfo Context information containing the principalId and 1267 * locale information about the caller of service 1268 * operation 1269 * @return the created Lui set information 1270 * @throws DataValidationErrorException data validation error 1271 * @throws DoesNotExistException LuiSetTypeKey not found 1272 * @throws InvalidParameterException invalid LuiSetInfo or contextInfo 1273 * @throws MissingParameterException missing LuiSetTypeKey, LuiSetInfo or 1274 * contextInfo 1275 * @throws OperationFailedException unable to complete request 1276 * @throws PermissionDeniedException authorization failure 1277 * @throws ReadOnlyException an attempt at supplying information 1278 * designated as read only 1279 * @throws UnsupportedActionException Lui set need to be static or dynamic 1280 * but not both 1281 */ 1282 public LuiSetInfo createLuiSet(@WebParam(name = "luiSetTypeKey") String luiSetTypeKey, 1283 @WebParam(name = "luiSetInfo") LuiSetInfo luiSetInfo, 1284 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1285 throws DataValidationErrorException, 1286 DoesNotExistException, 1287 InvalidParameterException, 1288 MissingParameterException, 1289 OperationFailedException, 1290 PermissionDeniedException, 1291 ReadOnlyException, 1292 UnsupportedActionException; 1293 1294 /** 1295 * Update the information for a Lui set 1296 * 1297 * @param luiSetId identifier of the Lui set to be updated 1298 * @param luiSetInfo updated information about the Lui set 1299 * @param contextInfo Context information containing the principalId and 1300 * locale information about the caller of service 1301 * operation 1302 * @return the updated Lui set information 1303 * @throws CircularRelationshipException added LuiSetId cannot be added to 1304 * the LuiSetInfo 1305 * @throws DataValidationErrorException data validation error 1306 * @throws DoesNotExistException LuiSetId not found 1307 * @throws InvalidParameterException invalid LuiSetInfo or contextInfo 1308 * @throws MissingParameterException missing LuiSetId, LuiSetInfo or 1309 * contextInfo 1310 * @throws OperationFailedException unable to complete request 1311 * @throws PermissionDeniedException authorization failure 1312 * @throws ReadOnlyException an attempt at supplying information 1313 * designated as read only 1314 * @throws UnsupportedActionException Lui set need to be static or 1315 * dynamic but not both 1316 * @throws VersionMismatchException an optimistic locking failure or 1317 * the action was attempted on an out 1318 * of date version 1319 */ 1320 public LuiSetInfo updateLuiSet(@WebParam(name = "luiSetId") String luiSetId, 1321 @WebParam(name = "luiSetInfo") LuiSetInfo luiSetInfo, 1322 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1323 throws CircularRelationshipException, 1324 DataValidationErrorException, 1325 DoesNotExistException, 1326 InvalidParameterException, 1327 MissingParameterException, 1328 OperationFailedException, 1329 PermissionDeniedException, 1330 ReadOnlyException, 1331 UnsupportedActionException, 1332 VersionMismatchException; 1333 1334 /** 1335 * Delete a Lui set 1336 * 1337 * @param luiSetId identifier of the Lui set to be deleted 1338 * @param contextInfo Context information containing the principalId and 1339 * locale information about the caller of service 1340 * operation 1341 * @return status of the operation (success or failure) 1342 * @throws DoesNotExistException LuiSetId not found 1343 * @throws InvalidParameterException invalid contextInfo 1344 * @throws MissingParameterException missing LuiSetId or contextInfo 1345 * @throws OperationFailedException unable to complete request 1346 * @throws PermissionDeniedException authorization failure 1347 */ 1348 public StatusInfo deleteLuiSet(@WebParam(name = "luiSetId") String luiSetId, 1349 @WebParam(name = "contextInfo") ContextInfo contextInfo) 1350 throws DoesNotExistException, 1351 InvalidParameterException, 1352 MissingParameterException, 1353 OperationFailedException, 1354 PermissionDeniedException; 1355 }