Coverage Report - org.kuali.student.r2.lum.lu.service.LuService
 
Classes in this File Line Coverage Branch Coverage Complexity
LuService
N/A
N/A
1
 
 1  
 /**
 2  
  * Copyright 2010 The Kuali Foundation Licensed under the
 3  
  * Educational Community License, Version 2.0 (the "License"); you may
 4  
  * not use this file except in compliance with the License. You may
 5  
  * obtain a copy of the License at
 6  
  *
 7  
  * http://www.osedu.org/licenses/ECL-2.0
 8  
  *
 9  
  * Unless required by applicable law or agreed to in writing,
 10  
  * software distributed under the License is distributed on an "AS IS"
 11  
  * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 12  
  * or implied. See the License for the specific language governing
 13  
  * permissions and limitations under the License.
 14  
  */
 15  
 
 16  
 package org.kuali.student.r2.lum.lu.service;
 17  
 
 18  
 import java.util.Date;
 19  
 import java.util.List;
 20  
 
 21  
 import javax.jws.WebParam;
 22  
 import javax.jws.WebService;
 23  
 import javax.jws.soap.SOAPBinding;
 24  
 
 25  
 import org.kuali.student.common.dto.StatusInfo;
 26  
 import org.kuali.student.common.search.service.SearchService;
 27  
 import org.kuali.student.common.validation.dto.ValidationResultInfo;
 28  
 import org.kuali.student.common.versionmanagement.service.VersionManagementService;
 29  
 import org.kuali.student.lum.lu.dto.CluCluRelationInfo;
 30  
 import org.kuali.student.lum.lu.dto.CluInfo;
 31  
 import org.kuali.student.lum.lu.dto.CluLoRelationInfo;
 32  
 import org.kuali.student.lum.lu.dto.CluLoRelationTypeInfo;
 33  
 import org.kuali.student.lum.lu.dto.CluPublicationInfo;
 34  
 import org.kuali.student.lum.lu.dto.CluResultInfo;
 35  
 import org.kuali.student.lum.lu.dto.CluResultTypeInfo;
 36  
 import org.kuali.student.lum.lu.dto.CluSetInfo;
 37  
 import org.kuali.student.lum.lu.dto.CluSetTreeViewInfo;
 38  
 import org.kuali.student.lum.lu.dto.CluSetTypeInfo;
 39  
 import org.kuali.student.lum.lu.dto.DeliveryMethodTypeInfo;
 40  
 import org.kuali.student.lum.lu.dto.InstructionalFormatTypeInfo;
 41  
 import org.kuali.student.lum.lu.dto.LuCodeTypeInfo;
 42  
 import org.kuali.student.lum.lu.dto.LuLuRelationTypeInfo;
 43  
 import org.kuali.student.lum.lu.dto.LuPublicationTypeInfo;
 44  
 import org.kuali.student.lum.lu.dto.LuTypeInfo;
 45  
 import org.kuali.student.lum.lu.dto.ResultUsageTypeInfo;
 46  
 import org.kuali.student.common.dictionary.service.DictionaryService;
 47  
 import org.kuali.student.r2.common.dto.ContextInfo;
 48  
 import org.kuali.student.common.exceptions.AlreadyExistsException;
 49  
 import org.kuali.student.common.exceptions.CircularRelationshipException;
 50  
 import org.kuali.student.common.exceptions.DataValidationErrorException;
 51  
 import org.kuali.student.common.exceptions.DependentObjectsExistException;
 52  
 import org.kuali.student.common.exceptions.DoesNotExistException;
 53  
 import org.kuali.student.common.exceptions.IllegalVersionSequencingException;
 54  
 import org.kuali.student.common.exceptions.InvalidParameterException;
 55  
 import org.kuali.student.common.exceptions.MissingParameterException;
 56  
 import org.kuali.student.common.exceptions.OperationFailedException;
 57  
 import org.kuali.student.common.exceptions.PermissionDeniedException;
 58  
 import org.kuali.student.common.exceptions.UnsupportedActionException;
 59  
 import org.kuali.student.common.exceptions.VersionMismatchException;
 60  
 import org.kuali.student.r2.common.util.constants.LuServiceConstants;
 61  
 
 62  
 /**
 63  
  * Learning Unit (LU) Service
 64  
  * 
 65  
  * @Author KSContractMojo
 66  
  * @Author Kamal
 67  
  * @Since Mon Jan 11 15:18:59 PST 2010
 68  
  * @See <a
 69  
  *      href="https://test.kuali.org/confluence/display/KULSTU/LU+Service+v1.0-rc4"
 70  
  *      >LUService</>
 71  
  * 
 72  
  */
 73  
 @WebService(name = "LuService", targetNamespace = LuServiceConstants.LU_NAMESPACE)
 74  
 @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
 75  
 public interface LuService extends DictionaryService, SearchService, VersionManagementService {
 76  
 
 77  
         /**
 78  
          * Retrieves the list of delivery method types
 79  
      * @param context         Context information containing the principalId
 80  
      *                        and locale information about the caller of service
 81  
      *                        operation
 82  
          * @return list of delivery method type information
 83  
          * @throws OperationFailedException
 84  
          *             unable to complete request
 85  
          */
 86  
         public List<DeliveryMethodTypeInfo> getDeliveryMethodTypes(@WebParam(name = "context") ContextInfo context)
 87  
                         throws OperationFailedException;
 88  
 
 89  
         /**
 90  
          * Retrieves information about a delivery method type
 91  
          * 
 92  
          * @param deliveryMethodTypeKey
 93  
          *            Key of the Delivery Method Type
 94  
      * @param context         Context information containing the principalId
 95  
      *                        and locale information about the caller of service
 96  
      *                        operation
 97  
          * @return information about a Delivery Method Type
 98  
          * @throws DoesNotExistException
 99  
          *             deliveryMethodType not found
 100  
          * @throws InvalidParameterException
 101  
          *             invalid deliveryMethodType
 102  
          * @throws MissingParameterException
 103  
          *             missing deliveryMethodType
 104  
          * @throws OperationFailedException
 105  
          *             unable to complete request
 106  
          */
 107  
         public DeliveryMethodTypeInfo getDeliveryMethodType(
 108  
                         @WebParam(name = "deliveryMethodTypeKey") String deliveryMethodTypeKey, @WebParam(name = "context") ContextInfo context)
 109  
                         throws DoesNotExistException, InvalidParameterException,
 110  
                         MissingParameterException, OperationFailedException;
 111  
 
 112  
         /**
 113  
          * Retrieves the list of instructional format types
 114  
      * @param context         Context information containing the principalId
 115  
      *                        and locale information about the caller of service
 116  
      *                        operation
 117  
          * 
 118  
          * @return list of instructional format type information
 119  
          * @throws OperationFailedException
 120  
          *             unable to complete request
 121  
          */
 122  
         public List<InstructionalFormatTypeInfo> getInstructionalFormatTypes(@WebParam(name = "context") ContextInfo context)
 123  
                         throws OperationFailedException;
 124  
 
 125  
         /**
 126  
          * Retrieves information about a Instructional Format Type
 127  
          * 
 128  
          * @param instructionalFormatTypeKey
 129  
          *            Key of the Instructional Format Type
 130  
      * @param context         Context information containing the principalId
 131  
      *                        and locale information about the caller of service
 132  
      *                        operation
 133  
          * @return information about a Instructional Format Type
 134  
          * @throws DoesNotExistException
 135  
          *             instructionalFormatType not found
 136  
          * @throws InvalidParameterException
 137  
          *             invalid instructionalFormatType
 138  
          * @throws MissingParameterException
 139  
          *             missing instructionalFormatType
 140  
          * @throws OperationFailedException
 141  
          *             unable to complete request
 142  
          */
 143  
         public InstructionalFormatTypeInfo getInstructionalFormatType(
 144  
                         @WebParam(name = "instructionalFormatTypeKey") String instructionalFormatTypeKey, @WebParam(name = "context") ContextInfo context)
 145  
                         throws DoesNotExistException, InvalidParameterException,
 146  
                         MissingParameterException, OperationFailedException;
 147  
 
 148  
         /**
 149  
          * Retrieves the list of LU types
 150  
          * 
 151  
      * @param context         Context information containing the principalId
 152  
      *                        and locale information about the caller of service
 153  
      *                        operation
 154  
          * @return list of LU type information
 155  
          * @throws OperationFailedException
 156  
          *             unable to complete request
 157  
          */
 158  
         public List<LuTypeInfo> getLuTypes(@WebParam(name = "context") ContextInfo context) throws OperationFailedException;
 159  
 
 160  
         /**
 161  
          * Retrieves information about a LU Type
 162  
          * 
 163  
          * @param luTypeKey
 164  
          *            Key of the LU Type
 165  
      * @param context         Context information containing the principalId
 166  
      *                        and locale information about the caller of service
 167  
      *                        operation
 168  
          * @return information about a LU Type
 169  
          * @throws DoesNotExistException
 170  
          *             luType not found
 171  
          * @throws InvalidParameterException
 172  
          *             invalid luType
 173  
          * @throws MissingParameterException
 174  
          *             missing luType
 175  
          * @throws OperationFailedException
 176  
          *             unable to complete request
 177  
          */
 178  
         public LuTypeInfo getLuType(@WebParam(name = "luTypeKey") String luTypeKey, @WebParam(name = "context") ContextInfo context)
 179  
                         throws DoesNotExistException, InvalidParameterException,
 180  
                         MissingParameterException, OperationFailedException;
 181  
 
 182  
         /**
 183  
          * Retrieves the list of learning unit code types
 184  
          * 
 185  
      * @param context         Context information containing the principalId
 186  
      *                        and locale information about the caller of service
 187  
      *                        operation
 188  
          * @return list of lu code type information
 189  
          * @throws OperationFailedException
 190  
          *             unable to complete request
 191  
          */
 192  
         public List<LuCodeTypeInfo> getLuCodeTypes(@WebParam(name = "context") ContextInfo context)
 193  
                         throws OperationFailedException;
 194  
 
 195  
         /**
 196  
          * Retrieves information about a learning unit code type
 197  
          * 
 198  
          * @param luCodeTypeKey
 199  
          *            Key of the learning unit code type
 200  
      * @param context         Context information containing the principalId
 201  
      *                        and locale information about the caller of service
 202  
      *                        operation
 203  
          * @return information about a learning unit code type
 204  
          * @throws DoesNotExistException
 205  
          *             luCodeTypeKey not found
 206  
          * @throws InvalidParameterException
 207  
          *             invalid luCodeTypeKey
 208  
          * @throws MissingParameterException
 209  
          *             missing luCodeTypeKey
 210  
          * @throws OperationFailedException
 211  
          *             unable to complete request
 212  
          */
 213  
         public LuCodeTypeInfo getLuCodeType(
 214  
                         @WebParam(name = "luCodeTypeKey") String luCodeTypeKey, @WebParam(name = "context") ContextInfo context)
 215  
                         throws DoesNotExistException, InvalidParameterException,
 216  
                         MissingParameterException, OperationFailedException;
 217  
 
 218  
         /**
 219  
          * Retrieves the complete list of LU to LU relation types
 220  
          * 
 221  
      * @param context         Context information containing the principalId
 222  
      *                        and locale information about the caller of service
 223  
      *                        operation
 224  
          * @return list of LU to LU relation type information
 225  
          * @throws OperationFailedException
 226  
          *             unable to complete request
 227  
          */
 228  
         public List<LuLuRelationTypeInfo> getLuLuRelationTypes(@WebParam(name = "context") ContextInfo context)
 229  
                         throws OperationFailedException;
 230  
 
 231  
         /**
 232  
          * Retrieves the LU to LU relation type
 233  
          * 
 234  
          * @param luLuRelationTypeKey
 235  
          *            Key of the LU to LU Relation Type
 236  
      * @param context         Context information containing the principalId
 237  
      *                        and locale information about the caller of service
 238  
      *                        operation
 239  
          * @return LU to LU relation type information
 240  
          * @throws OperationFailedException
 241  
          *             unable to complete request
 242  
          * @throws MissingParameterException
 243  
          *             missing luLuRelationTypeKey
 244  
          * @throws DoesNotExistException
 245  
          *             luLuRelationTypeKey not found
 246  
          */
 247  
         public LuLuRelationTypeInfo getLuLuRelationType(
 248  
                         @WebParam(name = "luLuRelationTypeKey") String luLuRelationTypeKey, @WebParam(name = "context") ContextInfo context)
 249  
                         throws OperationFailedException, MissingParameterException,
 250  
                         DoesNotExistException;
 251  
 
 252  
         /**
 253  
          * Retrieves the list of allowed relation types between the two specified LU
 254  
          * Types
 255  
          * 
 256  
          * @param luTypeKey
 257  
          *            Key of the first LU Type
 258  
          * @param relatedLuTypeKey
 259  
          *            Key of the second LU Type
 260  
      * @param context         Context information containing the principalId
 261  
      *                        and locale information about the caller of service
 262  
      *                        operation
 263  
          * @return list of LU to LU relation types
 264  
          * @throws DoesNotExistException
 265  
          *             luTypeKey, relatedLuTypeKey not found
 266  
          * @throws InvalidParameterException
 267  
          *             invalid luTypeKey, relatedLuTypeKey
 268  
          * @throws MissingParameterException
 269  
          *             missing luTypeKey, relatedLuTypeKey
 270  
          * @throws OperationFailedException
 271  
          *             unable to complete request
 272  
          */
 273  
         public List<String> getAllowedLuLuRelationTypesForLuType(
 274  
                         @WebParam(name = "luTypeKey") String luTypeKey,
 275  
                         @WebParam(name = "relatedLuTypeKey") String relatedLuTypeKey, @WebParam(name = "context") ContextInfo context)
 276  
                         throws DoesNotExistException, InvalidParameterException,
 277  
                         MissingParameterException, OperationFailedException;
 278  
 
 279  
         /**
 280  
          * Retrieves the list of Learning Unit publication types
 281  
          * 
 282  
      * @param context         Context information containing the principalId
 283  
      *                        and locale information about the caller of service
 284  
      *                        operation
 285  
          * @return list of Learning Unit publication type information
 286  
          * @throws OperationFailedException
 287  
          *             unable to complete request
 288  
          */
 289  
         public List<LuPublicationTypeInfo> getLuPublicationTypes(@WebParam(name = "context") ContextInfo context)
 290  
                         throws OperationFailedException;
 291  
 
 292  
         /**
 293  
          * Retrieves information about a publication type
 294  
          * 
 295  
          * @param luPublicationTypeKey
 296  
          *            Key of the Learning Unit Publication Type
 297  
      * @param context         Context information containing the principalId
 298  
      *                        and locale information about the caller of service
 299  
      *                        operation
 300  
          * @return information about a Learning Unit Publication Type
 301  
          * @throws DoesNotExistException
 302  
          *             luPublicationType not found
 303  
          * @throws InvalidParameterException
 304  
          *             invalid luPublicationType
 305  
          * @throws MissingParameterException
 306  
          *             missing luPublicationType
 307  
          * @throws OperationFailedException
 308  
          *             unable to complete request
 309  
          */
 310  
         public LuPublicationTypeInfo getLuPublicationType(
 311  
                         @WebParam(name = "luPublicationTypeKey") String luPublicationTypeKey, @WebParam(name = "context") ContextInfo context)
 312  
                         throws DoesNotExistException, InvalidParameterException,
 313  
                         MissingParameterException, OperationFailedException;
 314  
 
 315  
         /**
 316  
          * Retrieves information about a publication type
 317  
          * 
 318  
          * @param luTypeKey
 319  
          *            Key of the LU Type
 320  
      * @param context         Context information containing the principalId
 321  
      *                        and locale information about the caller of service
 322  
      *                        operation
 323  
          * @return list of LU publication types
 324  
          * @throws DoesNotExistException
 325  
          *             luPublicationType not found
 326  
          * @throws InvalidParameterException
 327  
          *             invalid luPublicationType
 328  
          * @throws MissingParameterException
 329  
          *             missing luPublicationType
 330  
          * @throws OperationFailedException
 331  
          *             unable to complete request
 332  
          */
 333  
         public List<String> getLuPublicationTypesForLuType(
 334  
                         @WebParam(name = "luTypeKey") String luTypeKey, @WebParam(name = "context") ContextInfo context)
 335  
                         throws DoesNotExistException, InvalidParameterException,
 336  
                         MissingParameterException, OperationFailedException;
 337  
 
 338  
         /**
 339  
          * Retrieves a list of types for clu result objects.
 340  
          * 
 341  
      * @param context         Context information containing the principalId
 342  
      *                        and locale information about the caller of service
 343  
      *                        operation
 344  
          * @return list of clu result type information
 345  
          * @throws OperationFailedException
 346  
          *             unable to complete request
 347  
          */
 348  
         public List<CluResultTypeInfo> getCluResultTypes(@WebParam(name = "context") ContextInfo context)
 349  
                         throws OperationFailedException;
 350  
 
 351  
         /**
 352  
          * Retrieves information about a publication type
 353  
          * 
 354  
          * @param cluResultTypeKey
 355  
          *            Key of the Canonical Learning Unit Result Type
 356  
      * @param context         Context information containing the principalId
 357  
      *                        and locale information about the caller of service
 358  
      *                        operation
 359  
          * @return information about a Learning Unit Publication Type
 360  
          * @throws DoesNotExistException
 361  
          *             luPublicationType not found
 362  
          * @throws InvalidParameterException
 363  
          *             invalid luPublicationType
 364  
          * @throws MissingParameterException
 365  
          *             missing luPublicationType
 366  
          * @throws OperationFailedException
 367  
          *             unable to complete request
 368  
          */
 369  
         public CluResultTypeInfo getCluResultType(
 370  
                         @WebParam(name = "cluResultTypeKey") String cluResultTypeKey, @WebParam(name = "context") ContextInfo context)
 371  
                         throws DoesNotExistException, InvalidParameterException,
 372  
                         MissingParameterException, OperationFailedException;
 373  
 
 374  
         /**
 375  
          * Retrieves the list of clu result types which are allowed to be used in
 376  
          * conjunction with a particular lu type.
 377  
          * 
 378  
          * @param luTypeKey
 379  
          *            luTypeKey
 380  
      * @param context         Context information containing the principalId
 381  
      *                        and locale information about the caller of service
 382  
      *                        operation
 383  
          * @return list of clu result types
 384  
          * @throws DoesNotExistException
 385  
          *             luTypeKey not found
 386  
          * @throws InvalidParameterException
 387  
          *             invalid luTypeKey
 388  
          * @throws MissingParameterException
 389  
          *             missing luTypeKey
 390  
          * @throws OperationFailedException
 391  
          *             unable to complete request
 392  
          */
 393  
         public List<CluResultTypeInfo> getCluResultTypesForLuType(
 394  
                         @WebParam(name = "luTypeKey") String luTypeKey, @WebParam(name = "context") ContextInfo context)
 395  
                         throws DoesNotExistException, InvalidParameterException,
 396  
                         MissingParameterException, OperationFailedException;
 397  
 
 398  
         /**
 399  
          * Retrieves a list of result usage types
 400  
          * 
 401  
      * @param context         Context information containing the principalId
 402  
      *                        and locale information about the caller of service
 403  
      *                        operation
 404  
          * @return list of result usage type information
 405  
          * @throws OperationFailedException
 406  
          *             unable to complete request
 407  
          */
 408  
         public List<ResultUsageTypeInfo> getResultUsageTypes(@WebParam(name = "context") ContextInfo context)
 409  
                         throws OperationFailedException;
 410  
 
 411  
         /**
 412  
          * Retrieves information about a Result Usage Type
 413  
          * 
 414  
          * @param resultUsageTypeKey
 415  
          *            Key of the Result Usage Type
 416  
      * @param context         Context information containing the principalId
 417  
      *                        and locale information about the caller of service
 418  
      *                        operation
 419  
          * @return information about a Result Usage Type
 420  
          * @throws DoesNotExistException
 421  
          *             resultUsageTypeKey not found
 422  
          * @throws InvalidParameterException
 423  
          *             invalid resultUsageTypeKey
 424  
          * @throws MissingParameterException
 425  
          *             missing resultUsageTypeKey
 426  
          * @throws OperationFailedException
 427  
          *             unable to complete request
 428  
          */
 429  
         public ResultUsageTypeInfo getResultUsageType(
 430  
                         @WebParam(name = "resultUsageTypeKey") String resultUsageTypeKey, @WebParam(name = "context") ContextInfo context)
 431  
                         throws DoesNotExistException, InvalidParameterException,
 432  
                         MissingParameterException, OperationFailedException;
 433  
 
 434  
         /**
 435  
          * Retrieves the list of result usage types which are allowed to be used in
 436  
          * conjunction with an lu type.
 437  
          * 
 438  
          * @param luTypeKey
 439  
          *            luTypeKey
 440  
      * @param context         Context information containing the principalId
 441  
      *                        and locale information about the caller of service
 442  
      *                        operation
 443  
          * @return list of result usage types
 444  
          * @throws DoesNotExistException
 445  
          *             luTypeKey not found
 446  
          * @throws InvalidParameterException
 447  
          *             invalid luTypeKey
 448  
          * @throws MissingParameterException
 449  
          *             missing luTypeKey
 450  
          * @throws OperationFailedException
 451  
          *             unable to complete request
 452  
          */
 453  
         public List<String> getAllowedResultUsageTypesForLuType(
 454  
                         @WebParam(name = "luTypeKey") String luTypeKey, @WebParam(name = "context") ContextInfo context)
 455  
                         throws DoesNotExistException, InvalidParameterException,
 456  
                         MissingParameterException, OperationFailedException;
 457  
 
 458  
         /**
 459  
          * Retrieves the list of result component types which are allowed to be used
 460  
          * in conjunction with result usage type.
 461  
          * 
 462  
          * @param resultUsageTypeKey
 463  
          *            resultUsageTypeKey
 464  
      * @param context         Context information containing the principalId
 465  
      *                        and locale information about the caller of service
 466  
      *                        operation
 467  
          * @return list of result component types
 468  
          * @throws DoesNotExistException
 469  
          *             resultUsageTypeKey not found
 470  
          * @throws InvalidParameterException
 471  
          *             invalid resultUsageTypeKey
 472  
          * @throws MissingParameterException
 473  
          *             missing resultUsageTypeKey
 474  
          * @throws OperationFailedException
 475  
          *             unable to complete request
 476  
          */
 477  
         public List<String> getAllowedResultComponentTypesForResultUsageType(
 478  
                         @WebParam(name = "resultUsageTypeKey") String resultUsageTypeKey, @WebParam(name = "context") ContextInfo context)
 479  
                         throws DoesNotExistException, InvalidParameterException,
 480  
                         MissingParameterException, OperationFailedException;
 481  
 
 482  
         /**
 483  
          * Retrieves the complete list of CLU to LO relation types
 484  
          * 
 485  
      * @param context         Context information containing the principalId
 486  
      *                        and locale information about the caller of service
 487  
      *                        operation
 488  
          * @return list of CLU to LO relation type information
 489  
          * @throws OperationFailedException
 490  
          *             unable to complete request
 491  
          */
 492  
         public List<CluLoRelationTypeInfo> getCluLoRelationTypes(@WebParam(name = "context") ContextInfo context)
 493  
                         throws OperationFailedException;
 494  
 
 495  
         /**
 496  
          * Retrieves information for a specified CLU to LO relation type
 497  
          * 
 498  
          * @param cluLoRelationTypeKey
 499  
          *            Key of the CLU to LO Relation Type
 500  
      * @param context         Context information containing the principalId
 501  
      *                        and locale information about the caller of service
 502  
      *                        operation
 503  
          * @return CLU to LO relation type information
 504  
          * @throws DoesNotExistException
 505  
          *             cluLoRelationTypeKey not found
 506  
          * @throws InvalidParameterException
 507  
          *             invalid cluLoRelationTypeKey
 508  
          * @throws MissingParameterException
 509  
          *             missing cluLoRelationTypeKey
 510  
          * @throws OperationFailedException
 511  
          *             unable to complete request
 512  
          */
 513  
         public CluLoRelationTypeInfo getCluLoRelationType(
 514  
                         @WebParam(name = "cluLoRelationTypeKey") String cluLoRelationTypeKey, @WebParam(name = "context") ContextInfo context)
 515  
                         throws DoesNotExistException, InvalidParameterException,
 516  
                         MissingParameterException, OperationFailedException;
 517  
 
 518  
         /**
 519  
          * Retrieves the list of CLU LO relation types which are allowed to be used
 520  
          * in conjunction with an lu type.
 521  
          * 
 522  
          * @param luTypeKey
 523  
          *            luTypeKey
 524  
      * @param context         Context information containing the principalId
 525  
      *                        and locale information about the caller of service
 526  
      *                        operation
 527  
          * @return list of clu lo relation types
 528  
          * @throws DoesNotExistException
 529  
          *             luTypeKey not found
 530  
          * @throws InvalidParameterException
 531  
          *             invalid luTypeKey
 532  
          * @throws MissingParameterException
 533  
          *             missing luTypeKey
 534  
          * @throws OperationFailedException
 535  
          *             unable to complete request
 536  
          */
 537  
         public List<String> getAllowedCluLoRelationTypesForLuType(
 538  
                         @WebParam(name = "luTypeKey") String luTypeKey, @WebParam(name = "context") ContextInfo context)
 539  
                         throws DoesNotExistException, InvalidParameterException,
 540  
                         MissingParameterException, OperationFailedException;
 541  
 
 542  
         /**
 543  
          * Retrieves the list of CLU set types known by the service
 544  
          * 
 545  
      * @param context         Context information containing the principalId
 546  
      *                        and locale information about the caller of service
 547  
      *                        operation
 548  
          * @return list of CLU set type information
 549  
          * @throws OperationFailedException
 550  
          *             unable to complete request
 551  
          */
 552  
         public List<CluSetTypeInfo> getCluSetTypes(@WebParam(name = "context") ContextInfo context)
 553  
                         throws OperationFailedException;
 554  
 
 555  
         /**
 556  
          * Retrieves information about a specified CLU set type
 557  
          * 
 558  
          * @param cluSetTypeKey
 559  
          *            Key of the CLU set type
 560  
      * @param context         Context information containing the principalId
 561  
      *                        and locale information about the caller of service
 562  
      *                        operation
 563  
          * @return information about a CLU set type
 564  
          * @throws DoesNotExistException
 565  
          *             cluSetTypeKey not found
 566  
          * @throws InvalidParameterException
 567  
          *             invalid cluSetTypeKey
 568  
          * @throws MissingParameterException
 569  
          *             missing cluSetTypeKey
 570  
          * @throws OperationFailedException
 571  
          *             unable to complete request
 572  
          */
 573  
         public CluSetTypeInfo getCluSetType(
 574  
                         @WebParam(name = "cluSetTypeKey") String cluSetTypeKey, @WebParam(name = "context") ContextInfo context)
 575  
                         throws DoesNotExistException, InvalidParameterException,
 576  
                         MissingParameterException, OperationFailedException;
 577  
 
 578  
         /**
 579  
          * Retrieves core information about a CLU
 580  
          * 
 581  
          * @param cluId
 582  
          *            identifier of the CLU
 583  
      * @param context         Context information containing the principalId
 584  
      *                        and locale information about the caller of service
 585  
      *                        operation
 586  
          * @return information about a CLU
 587  
          * @throws DoesNotExistException
 588  
          *             cluId not found
 589  
          * @throws InvalidParameterException
 590  
          *             invalid cluId
 591  
          * @throws MissingParameterException
 592  
          *             missing cluId
 593  
          * @throws OperationFailedException
 594  
          *             unable to complete request
 595  
          */
 596  
         public CluInfo getClu(@WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 597  
                         throws DoesNotExistException, InvalidParameterException,
 598  
                         MissingParameterException, OperationFailedException;
 599  
 
 600  
         /**
 601  
          * Retrieves information about CLUs from a list of ids
 602  
          * 
 603  
          * @param cluIdList
 604  
          *            List of CLU identifiers
 605  
      * @param context         Context information containing the principalId
 606  
      *                        and locale information about the caller of service
 607  
      *                        operation
 608  
          * @return information a list of CLUs
 609  
          * @throws DoesNotExistException
 610  
          *             One or more cluIds not found
 611  
          * @throws InvalidParameterException
 612  
          *             One or more invalid cluIds
 613  
          * @throws MissingParameterException
 614  
          *             missing cluIdList
 615  
          * @throws OperationFailedException
 616  
          *             unable to complete request
 617  
          */
 618  
         public List<CluInfo> getClusByIdList(
 619  
                         @WebParam(name = "cluIdList") List<String> cluIdList, @WebParam(name = "context") ContextInfo context)
 620  
                         throws DoesNotExistException, InvalidParameterException,
 621  
                         MissingParameterException, OperationFailedException;
 622  
 
 623  
         /**
 624  
          * Retrieves the list of CLUs for the specified LU Type and state
 625  
          * 
 626  
          * @param luTypeKey
 627  
          *            Type of the CLUs to retrieve
 628  
          * @param luState
 629  
          *            State of the CLUs to retrieve.
 630  
      * @param context         Context information containing the principalId
 631  
      *                        and locale information about the caller of service
 632  
      *                        operation
 633  
          * @return list of CLU information
 634  
          * @throws DoesNotExistException
 635  
          *             luType or luState not found
 636  
          * @throws InvalidParameterException
 637  
          *             invalid luType or luState
 638  
          * @throws MissingParameterException
 639  
          *             missing luType or luState
 640  
          * @throws OperationFailedException
 641  
          *             unable to complete request
 642  
          */
 643  
         public List<CluInfo> getClusByLuType(
 644  
                         @WebParam(name = "luTypeKey") String luTypeKey,
 645  
                         @WebParam(name = "luState") String luState, @WebParam(name = "context") ContextInfo context)
 646  
                         throws DoesNotExistException, InvalidParameterException,
 647  
                         MissingParameterException, OperationFailedException;
 648  
 
 649  
         /**
 650  
          * Retrieves the list of CLU ids for the specified LU Type and state
 651  
          * 
 652  
          * @param luTypeKey
 653  
          *            Type of the CLUs whose identifiers should be retrieved
 654  
          * @param luState
 655  
          *            State of the CLUs whose identifiers should be retrieved
 656  
      * @param context         Context information containing the principalId
 657  
      *                        and locale information about the caller of service
 658  
      *                        operation
 659  
          * @return list of CLU identifiers
 660  
          * @throws DoesNotExistException
 661  
          *             luType or luState not found
 662  
          * @throws InvalidParameterException
 663  
          *             invalid luType or luState
 664  
          * @throws MissingParameterException
 665  
          *             missing luType or luState
 666  
          * @throws OperationFailedException
 667  
          *             unable to complete request
 668  
          */
 669  
         public List<String> getCluIdsByLuType(
 670  
                         @WebParam(name = "luTypeKey") String luTypeKey,
 671  
                         @WebParam(name = "luState") String luState, @WebParam(name = "context") ContextInfo context)
 672  
                         throws DoesNotExistException, InvalidParameterException,
 673  
                         MissingParameterException, OperationFailedException;
 674  
 
 675  
         /**
 676  
          * Retrieves the list of allowed relation types between the two specified
 677  
          * CLUs
 678  
          * 
 679  
          * @param cluId
 680  
          *            identifier of the first CLU
 681  
          * @param relatedCluId
 682  
          *            identifier of the second CLU
 683  
      * @param context         Context information containing the principalId
 684  
      *                        and locale information about the caller of service
 685  
      *                        operation
 686  
          * @return list of LU to LU relation types
 687  
          * @throws DoesNotExistException
 688  
          *             clu, relatedClu not found
 689  
          * @throws InvalidParameterException
 690  
          *             invalid cluId, relatedCluId
 691  
          * @throws MissingParameterException
 692  
          *             missing cluId, relatedCluId
 693  
          * @throws OperationFailedException
 694  
          *             unable to complete request
 695  
          */
 696  
         public List<String> getAllowedLuLuRelationTypesByCluId(
 697  
                         @WebParam(name = "cluId") String cluId,
 698  
                         @WebParam(name = "relatedCluId") String relatedCluId, @WebParam(name = "context") ContextInfo context)
 699  
                         throws DoesNotExistException, InvalidParameterException,
 700  
                         MissingParameterException, OperationFailedException;
 701  
 
 702  
         /**
 703  
          * Retrieves the list of CLU information for the CLUs related to a specified
 704  
          * CLU Id with a certain LU to LU relation type (getRelatedClusByCluId from
 705  
          * the other direction)
 706  
          * 
 707  
          * @param relatedCluId
 708  
          *            identifier of the child or To CLU
 709  
          * @param luLuRelationType
 710  
          *            the LU to LU relation type
 711  
      * @param context         Context information containing the principalId
 712  
      *                        and locale information about the caller of service
 713  
      *                        operation
 714  
          * @return list of CLU information
 715  
          * @throws DoesNotExistException
 716  
          *             relatedCluId, luLuRelationType not found
 717  
          * @throws InvalidParameterException
 718  
          *             invalid relatedCluId, luLuRelationType
 719  
          * @throws MissingParameterException
 720  
          *             missing relatedCluId, luLuRelationType
 721  
          * @throws OperationFailedException
 722  
          *             unable to complete request
 723  
          */
 724  
         public List<CluInfo> getClusByRelation(
 725  
                         @WebParam(name = "relatedCluId") String relatedCluId,
 726  
                         @WebParam(name = "luLuRelationType") String luLuRelationType, @WebParam(name = "context") ContextInfo context)
 727  
                         throws DoesNotExistException, InvalidParameterException,
 728  
                         MissingParameterException, OperationFailedException;
 729  
 
 730  
         /**
 731  
          * Retrieves the list of CLU Ids for the specified related CLU Id and LU to
 732  
          * LU relation type (getRelatedCluIdsByCluId from the other direction)
 733  
          * 
 734  
          * @param relatedCluId
 735  
          *            identifier of the child or To CLU
 736  
          * @param luLuRelationType
 737  
          *            the LU to LU relation type
 738  
      * @param context         Context information containing the principalId
 739  
      *                        and locale information about the caller of service
 740  
      *                        operation
 741  
          * @return list of CLU identifiers
 742  
          * @throws DoesNotExistException
 743  
          *             relatedClu, luLuRelationType not found
 744  
          * @throws InvalidParameterException
 745  
          *             invalid relatedCluId, luLuRelationType
 746  
          * @throws MissingParameterException
 747  
          *             missing relatedCluId, luLuRelationType
 748  
          * @throws OperationFailedException
 749  
          *             unable to complete request
 750  
          */
 751  
         public List<String> getCluIdsByRelation(
 752  
                         @WebParam(name = "relatedCluId") String relatedCluId,
 753  
                         @WebParam(name = "luLuRelationType") String luLuRelationType, @WebParam(name = "context") ContextInfo context)
 754  
                         throws DoesNotExistException, InvalidParameterException,
 755  
                         MissingParameterException, OperationFailedException;
 756  
 
 757  
         /**
 758  
          * Retrieves the list of related CLU information for the specified CLU Id
 759  
          * and LU to LU relation type (getClusByRelation from the other direction)
 760  
          * 
 761  
          * @param cluId
 762  
          *            identifier of the parent or From CLU
 763  
          * @param luLuRelationType
 764  
          *            the LU to LU relation type
 765  
      * @param context         Context information containing the principalId
 766  
      *                        and locale information about the caller of service
 767  
      *                        operation
 768  
          * @return list of CLU information
 769  
          * @throws DoesNotExistException
 770  
          *             clu, luLuRelationType not found
 771  
          * @throws InvalidParameterException
 772  
          *             invalid cluId, luLuRelationType
 773  
          * @throws MissingParameterException
 774  
          *             missing cluId, luLuRelationType
 775  
          * @throws OperationFailedException
 776  
          *             unable to complete request
 777  
          */
 778  
         public List<CluInfo> getRelatedClusByCluId(
 779  
                         @WebParam(name = "cluId") String cluId,
 780  
                         @WebParam(name = "luLuRelationType") String luLuRelationType, @WebParam(name = "context") ContextInfo context)
 781  
                         throws DoesNotExistException, InvalidParameterException,
 782  
                         MissingParameterException, OperationFailedException;
 783  
 
 784  
         /**
 785  
          * Retrieves the list of related CLU Ids for the specified CLU Id and LU to
 786  
          * LU relation type (getCluIdsByRelation from the other direction)
 787  
          * 
 788  
          * @param cluId
 789  
          *            identifier of the parent or From CLU
 790  
          * @param luLuRelationType
 791  
          *            the LU to LU relation type
 792  
      * @param context         Context information containing the principalId
 793  
      *                        and locale information about the caller of service
 794  
      *                        operation
 795  
          * @return list of CLU identifiers
 796  
          * @throws DoesNotExistException
 797  
          *             clu, luLuRelationType not found
 798  
          * @throws InvalidParameterException
 799  
          *             invalid cluId, luLuRelationType
 800  
          * @throws MissingParameterException
 801  
          *             missing cluId, luLuRelationType
 802  
          * @throws OperationFailedException
 803  
          *             unable to complete request
 804  
          */
 805  
         public List<String> getRelatedCluIdsByCluId(
 806  
                         @WebParam(name = "cluId") String cluId,
 807  
                         @WebParam(name = "luLuRelationType") String luLuRelationType, @WebParam(name = "context") ContextInfo context)
 808  
                         throws DoesNotExistException, InvalidParameterException,
 809  
                         MissingParameterException, OperationFailedException;
 810  
 
 811  
         /**
 812  
          * Retrieves the relationship information between CLUs for a particular
 813  
          * Relation instance
 814  
          * 
 815  
          * @param cluCluRelationId
 816  
          *            identifier of the CLU to CLU relation
 817  
      * @param context         Context information containing the principalId
 818  
      *                        and locale information about the caller of service
 819  
      *                        operation
 820  
          * @return information on the relation between two CLUs
 821  
          * @throws DoesNotExistException
 822  
          *             cluCluRelation not found
 823  
          * @throws InvalidParameterException
 824  
          *             invalid cluCluRelationId
 825  
          * @throws MissingParameterException
 826  
          *             missing cluCluRelationId
 827  
          * @throws OperationFailedException
 828  
          *             unable to complete request
 829  
          */
 830  
         public CluCluRelationInfo getCluCluRelation(
 831  
                         @WebParam(name = "cluCluRelationId") String cluCluRelationId, @WebParam(name = "context") ContextInfo context)
 832  
                         throws DoesNotExistException, InvalidParameterException,
 833  
                         MissingParameterException, OperationFailedException;
 834  
 
 835  
         /**
 836  
          * Retrieves the list of relationship information for the specified CLU
 837  
          * 
 838  
          * @param cluId
 839  
          *            identifier of the parent or From CLU
 840  
      * @param context         Context information containing the principalId
 841  
      *                        and locale information about the caller of service
 842  
      *                        operation
 843  
          * @return list of CLU to CLU relation information
 844  
          * @throws DoesNotExistException
 845  
          *             clu not found
 846  
          * @throws InvalidParameterException
 847  
          *             invalid cluId
 848  
          * @throws MissingParameterException
 849  
          *             missing cluId
 850  
          * @throws OperationFailedException
 851  
          *             unable to complete request
 852  
          */
 853  
         public List<CluCluRelationInfo> getCluCluRelationsByClu(
 854  
                         @WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 855  
                         throws DoesNotExistException, InvalidParameterException,
 856  
                         MissingParameterException, OperationFailedException;
 857  
 
 858  
         /**
 859  
          * Retrieves a list of publication objects for a particular clu
 860  
          * 
 861  
          * @param cluId
 862  
          *            clu identifier
 863  
      * @param context         Context information containing the principalId
 864  
      *                        and locale information about the caller of service
 865  
      *                        operation
 866  
          * @return list of publication objects used by the specified clu
 867  
          * @throws DoesNotExistException
 868  
          *             clu not found
 869  
          * @throws InvalidParameterException
 870  
          *             invalid cluId
 871  
          * @throws MissingParameterException
 872  
          *             cluId not specified
 873  
          * @throws OperationFailedException
 874  
          *             unable to complete request
 875  
          */
 876  
         public List<CluPublicationInfo> getCluPublicationsByCluId(
 877  
                         @WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 878  
                         throws DoesNotExistException, InvalidParameterException,
 879  
                         MissingParameterException, OperationFailedException;
 880  
 
 881  
         /**
 882  
          * Retrieves a list of publication objects of a particular Type
 883  
          * 
 884  
          * @param luPublicationTypeKey
 885  
          *            luPublicationType identifier
 886  
      * @param context         Context information containing the principalId
 887  
      *                        and locale information about the caller of service
 888  
      *                        operation
 889  
          * @return list of CLU Publication objects using the specified type
 890  
          * @throws DoesNotExistException
 891  
          *             luPublicationType not found
 892  
          * @throws InvalidParameterException
 893  
          *             invalid luPublicationTypeKey
 894  
          * @throws MissingParameterException
 895  
          *             luPublicationTypeKey not specified
 896  
          * @throws OperationFailedException
 897  
          *             unable to complete request
 898  
          */
 899  
         public List<CluPublicationInfo> getCluPublicationsByType(
 900  
                         @WebParam(name = "luPublicationTypeKey") String luPublicationTypeKey, @WebParam(name = "context") ContextInfo context)
 901  
                         throws DoesNotExistException, InvalidParameterException,
 902  
                         MissingParameterException, OperationFailedException;
 903  
 
 904  
         /**
 905  
          * Retrieves an LU publication object by its identifier
 906  
          * 
 907  
          * @param cluPublicationId
 908  
          *            CLU publication identifier
 909  
      * @param context         Context information containing the principalId
 910  
      *                        and locale information about the caller of service
 911  
      *                        operation
 912  
          * @return CLU Publication information
 913  
          * @throws DoesNotExistException
 914  
          *             CLU Publication not found
 915  
          * @throws InvalidParameterException
 916  
          *             invalid cluPublicationId
 917  
          * @throws MissingParameterException
 918  
          *             cluPublicationId not specified
 919  
          * @throws OperationFailedException
 920  
          *             unable to complete request
 921  
          */
 922  
         public CluPublicationInfo getCluPublication(
 923  
                         @WebParam(name = "cluPublicationId") String cluPublicationId, @WebParam(name = "context") ContextInfo context)
 924  
                         throws DoesNotExistException, InvalidParameterException,
 925  
                         MissingParameterException, OperationFailedException;
 926  
 
 927  
         /**
 928  
          * Retrieves information about a Clu Result
 929  
          * 
 930  
          * @param cluResultId
 931  
          *            identifier of the Clu Result
 932  
      * @param context         Context information containing the principalId
 933  
      *                        and locale information about the caller of service
 934  
      *                        operation
 935  
          * @return information about a Clu Result
 936  
          * @throws DoesNotExistException
 937  
          *             cluResult not found
 938  
          * @throws InvalidParameterException
 939  
          *             invalid cluResultId
 940  
          * @throws MissingParameterException
 941  
          *             missing cluResultId
 942  
          * @throws OperationFailedException
 943  
          *             unable to complete request
 944  
          */
 945  
         public CluResultInfo getCluResult(
 946  
                         @WebParam(name = "cluResultId") String cluResultId, @WebParam(name = "context") ContextInfo context)
 947  
                         throws DoesNotExistException, InvalidParameterException,
 948  
                         MissingParameterException, OperationFailedException;
 949  
 
 950  
         /**
 951  
          * Retrieves the cluResult for a particular clu
 952  
          * 
 953  
          * @param cluId
 954  
          *            clu identifier
 955  
      * @param context         Context information containing the principalId
 956  
      *                        and locale information about the caller of service
 957  
      *                        operation
 958  
          * @return result information for a clu
 959  
          * @throws DoesNotExistException
 960  
          *             clu not found
 961  
          * @throws InvalidParameterException
 962  
          *             invalid cluId
 963  
          * @throws MissingParameterException
 964  
          *             cluId not specified
 965  
          * @throws OperationFailedException
 966  
          *             unable to complete request
 967  
          */
 968  
         public List<CluResultInfo> getCluResultByClu(
 969  
                         @WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 970  
                         throws DoesNotExistException, InvalidParameterException,
 971  
                         MissingParameterException, OperationFailedException;
 972  
 
 973  
         /**
 974  
          * Retrieves the list of clu ids with the results of the specified usage
 975  
          * type. This would for example allow requests for all clus which have a
 976  
          * final grade.
 977  
          * 
 978  
          * @param resultUsageTypeKey
 979  
          *            identifier of the result usage type
 980  
      * @param context         Context information containing the principalId
 981  
      *                        and locale information about the caller of service
 982  
      *                        operation
 983  
          * @return list of clu ids
 984  
          * @throws DoesNotExistException
 985  
          *             resultUsageType not found
 986  
          * @throws InvalidParameterException
 987  
          *             invalid resultUsageTypeKey
 988  
          * @throws MissingParameterException
 989  
          *             missing resultUsageTypeKey
 990  
          * @throws OperationFailedException
 991  
          *             unable to complete request
 992  
          */
 993  
         public List<String> getCluIdsByResultUsageType(
 994  
                         @WebParam(name = "resultUsageTypeKey") String resultUsageTypeKey, @WebParam(name = "context") ContextInfo context)
 995  
                         throws DoesNotExistException, InvalidParameterException,
 996  
                         MissingParameterException, OperationFailedException;
 997  
 
 998  
         /**
 999  
          * Retrieves the list of clu ids which use a particular result component
 1000  
          * 
 1001  
          * @param resultComponentId
 1002  
          *            identifier of the result component
 1003  
      * @param context         Context information containing the principalId
 1004  
      *                        and locale information about the caller of service
 1005  
      *                        operation
 1006  
          * @return list of clu ids
 1007  
          * @throws DoesNotExistException
 1008  
          *             resultComponent not found
 1009  
          * @throws InvalidParameterException
 1010  
          *             invalid resultComponentId
 1011  
          * @throws MissingParameterException
 1012  
          *             missing resultComponentId
 1013  
          * @throws OperationFailedException
 1014  
          *             unable to complete request
 1015  
          */
 1016  
         public List<String> getCluIdsByResultComponent(
 1017  
                         @WebParam(name = "resultComponentId") String resultComponentId, @WebParam(name = "context") ContextInfo context)
 1018  
                         throws DoesNotExistException, InvalidParameterException,
 1019  
                         MissingParameterException, OperationFailedException;
 1020  
 
 1021  
         /**
 1022  
          * Retrieve information on a CLU LO Relation.
 1023  
          * 
 1024  
          * @param cluLoRelationId
 1025  
          *            Identifier of the CLU LO Relation
 1026  
      * @param context         Context information containing the principalId
 1027  
      *                        and locale information about the caller of service
 1028  
      *                        operation
 1029  
          * @return The retrieved CLU LO Relation information
 1030  
          * @throws DoesNotExistException
 1031  
          *             cluLoRelation not found
 1032  
          * @throws InvalidParameterException
 1033  
          *             invalid cluLoRelationId
 1034  
          * @throws MissingParameterException
 1035  
          *             missing cluLoRelationId
 1036  
          * @throws OperationFailedException
 1037  
          *             unable to complete request
 1038  
          * @throws PermissionDeniedException
 1039  
          *             authorization failure
 1040  
          */
 1041  
         public CluLoRelationInfo getCluLoRelation(
 1042  
                         @WebParam(name = "cluLoRelationId") String cluLoRelationId, @WebParam(name = "context") ContextInfo context)
 1043  
                         throws DoesNotExistException, InvalidParameterException,
 1044  
                         MissingParameterException, OperationFailedException,
 1045  
                         PermissionDeniedException;
 1046  
 
 1047  
         /**
 1048  
          * Retrieves the list of canonical learning unit to learning objective
 1049  
          * relationships for a given CLU.
 1050  
          * 
 1051  
          * @param cluId
 1052  
          *            Identifier for the CLU
 1053  
      * @param context         Context information containing the principalId
 1054  
      *                        and locale information about the caller of service
 1055  
      *                        operation
 1056  
          * @return List of canonical learning unit to learning objective
 1057  
          *         relationships
 1058  
          * @throws DoesNotExistException
 1059  
          *             clu not found
 1060  
          * @throws InvalidParameterException
 1061  
          *             invalid cluId
 1062  
          * @throws MissingParameterException
 1063  
          *             missing cluId
 1064  
          * @throws OperationFailedException
 1065  
          *             unable to complete request
 1066  
          */
 1067  
         public List<CluLoRelationInfo> getCluLoRelationsByClu(
 1068  
                         @WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 1069  
                         throws DoesNotExistException, InvalidParameterException,
 1070  
                         MissingParameterException, OperationFailedException;
 1071  
 
 1072  
         /**
 1073  
          * Retrieves the list of CLU identifiers associated with a given learning
 1074  
          * objective identifier.
 1075  
          * 
 1076  
          * @param loId
 1077  
          *            Identifier for the learning objective
 1078  
      * @param context         Context information containing the principalId
 1079  
      *                        and locale information about the caller of service
 1080  
      *                        operation
 1081  
          * @return List of CLU LO Relations
 1082  
          * @throws DoesNotExistException
 1083  
          *             lo not found
 1084  
          * @throws InvalidParameterException
 1085  
          *             invalid loId
 1086  
          * @throws MissingParameterException
 1087  
          *             missing loId
 1088  
          * @throws OperationFailedException
 1089  
          *             unable to complete request
 1090  
          */
 1091  
         public List<CluLoRelationInfo> getCluLoRelationsByLo(
 1092  
                         @WebParam(name = "loId") String loId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException,
 1093  
                         InvalidParameterException, MissingParameterException,
 1094  
                         OperationFailedException;
 1095  
 
 1096  
         /**
 1097  
          * Retrieves the list of Resource requirements for the specified CLU
 1098  
          * 
 1099  
          * @param cluId
 1100  
          *            Unique identifier for the CLU
 1101  
      * @param context         Context information containing the principalId
 1102  
      *                        and locale information about the caller of service
 1103  
      *                        operation
 1104  
          * @return List of resource requirements
 1105  
          * @throws DoesNotExistException
 1106  
          *             clu not found
 1107  
          * @throws InvalidParameterException
 1108  
          *             cluId invalid
 1109  
          * @throws MissingParameterException
 1110  
          *             cluId missing
 1111  
          * @throws OperationFailedException
 1112  
          *             unable to complete request
 1113  
          */
 1114  
         public List<String> getResourceRequirementsForCluId(
 1115  
                         @WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 1116  
                         throws DoesNotExistException, InvalidParameterException,
 1117  
                         MissingParameterException, OperationFailedException;
 1118  
 
 1119  
         /**
 1120  
          * Retrieve information on a CLU set. This information should be about the
 1121  
          * set itself, and in the case of a dynamic CLU set, should include the
 1122  
          * criteria used to generate the set.
 1123  
          * 
 1124  
          * @param cluSetId
 1125  
          *            Identifier of the CLU set
 1126  
      * @param context         Context information containing the principalId
 1127  
      *                        and locale information about the caller of service
 1128  
      *                        operation
 1129  
          * @return The retrieved CLU set information
 1130  
          * @throws DoesNotExistException
 1131  
          *             cluSet not found
 1132  
          * @throws InvalidParameterException
 1133  
          *             invalid cluSetId
 1134  
          * @throws MissingParameterException
 1135  
          *             missing cluSetId
 1136  
          * @throws OperationFailedException
 1137  
          *             unable to complete request
 1138  
          * @throws PermissionDeniedException
 1139  
          *             authorization failure
 1140  
          */
 1141  
         public CluSetInfo getCluSetInfo(@WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1142  
                         throws DoesNotExistException, InvalidParameterException,
 1143  
                         MissingParameterException, OperationFailedException,
 1144  
                         PermissionDeniedException;
 1145  
 
 1146  
         /**
 1147  
          * Retrieve information on a CLU set and its sub clu set fully expanded.
 1148  
          * 
 1149  
          * @param cluSetId
 1150  
          *            Identifier of the CLU set
 1151  
      * @param context         Context information containing the principalId
 1152  
      *                        and locale information about the caller of service
 1153  
      *                        operation
 1154  
          * @return The retrieved CLU set tree view information
 1155  
          * @throws DoesNotExistException
 1156  
          *             cluSet not found
 1157  
          * @throws InvalidParameterException
 1158  
          *             invalid cluSetId
 1159  
          * @throws MissingParameterException
 1160  
          *             missing cluSetId
 1161  
          * @throws OperationFailedException
 1162  
          *             unable to complete request
 1163  
          * @throws PermissionDeniedException
 1164  
          *             authorization failure
 1165  
          */
 1166  
         public CluSetTreeViewInfo getCluSetTreeView(
 1167  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1168  
                         throws DoesNotExistException, InvalidParameterException,
 1169  
                         MissingParameterException, OperationFailedException,
 1170  
                         PermissionDeniedException;
 1171  
 
 1172  
         /**
 1173  
          * Retrieve information on CLU sets from a list of cluSet Ids.
 1174  
          * 
 1175  
          * @param cluSetIdList
 1176  
          *            List of identifiers of CLU sets
 1177  
      * @param context         Context information containing the principalId
 1178  
      *                        and locale information about the caller of service
 1179  
      *                        operation
 1180  
          * @return The retrieved list of CLU set information
 1181  
          * @throws DoesNotExistException
 1182  
          *             One or more cluSets not found
 1183  
          * @throws InvalidParameterException
 1184  
          *             One or more cluSetIds invalid
 1185  
          * @throws MissingParameterException
 1186  
          *             missing cluSetIdList
 1187  
          * @throws OperationFailedException
 1188  
          *             unable to complete request
 1189  
          * @throws PermissionDeniedException
 1190  
          *             authorization failure
 1191  
          */
 1192  
         public List<CluSetInfo> getCluSetInfoByIdList(
 1193  
                         @WebParam(name = "cluSetIdList") List<String> cluSetIdList, @WebParam(name = "context") ContextInfo context)
 1194  
                         throws DoesNotExistException, InvalidParameterException,
 1195  
                         MissingParameterException, OperationFailedException,
 1196  
                         PermissionDeniedException;
 1197  
 
 1198  
         /**
 1199  
          * Retrieve the list of CLU Set Ids within a CLU Set
 1200  
          * 
 1201  
          * @param cluSetId
 1202  
          *            Identifier of the CLU set
 1203  
      * @param context         Context information containing the principalId
 1204  
      *                        and locale information about the caller of service
 1205  
      *                        operation
 1206  
          * @return The retrieved list of CLU Set Ids within the specified CLU set
 1207  
          * @throws DoesNotExistException
 1208  
          *             cluSet not found
 1209  
          * @throws InvalidParameterException
 1210  
          *             invalid cluSetId
 1211  
          * @throws MissingParameterException
 1212  
          *             missing cluSetId
 1213  
          * @throws OperationFailedException
 1214  
          *             unable to complete request
 1215  
          * @throws PermissionDeniedException
 1216  
          *             authorization failure
 1217  
          */
 1218  
         public List<String> getCluSetIdsFromCluSet(
 1219  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1220  
                         throws DoesNotExistException, InvalidParameterException,
 1221  
                         MissingParameterException, OperationFailedException,
 1222  
                         PermissionDeniedException;
 1223  
 
 1224  
         /**
 1225  
          * Check if the given CluSet is dynamic
 1226  
          * 
 1227  
          * @param cluSetId
 1228  
          *            Identifier of the CLU set
 1229  
      * @param context         Context information containing the principalId
 1230  
      *                        and locale information about the caller of service
 1231  
      *                        operation
 1232  
          * @return The retrieved list of CLU Set Ids within the specified CLU set
 1233  
          * @throws DoesNotExistException
 1234  
          *             cluSet not found
 1235  
          * @throws InvalidParameterException
 1236  
          *             invalid cluSetId
 1237  
          * @throws MissingParameterException
 1238  
          *             missing cluSetId
 1239  
          * @throws OperationFailedException
 1240  
          *             unable to complete request
 1241  
          * @throws PermissionDeniedException
 1242  
          *             authorization failure
 1243  
          */
 1244  
         public Boolean isCluSetDynamic(@WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1245  
                         throws DoesNotExistException, InvalidParameterException,
 1246  
                         MissingParameterException, OperationFailedException,
 1247  
                         PermissionDeniedException;
 1248  
 
 1249  
         /**
 1250  
          * Retrieves the list of CLUs in a CLU set. This only retrieves the direct
 1251  
          * members.
 1252  
          * 
 1253  
          * @param cluSetId
 1254  
          *            Identifier of the CLU set
 1255  
      * @param context         Context information containing the principalId
 1256  
      *                        and locale information about the caller of service
 1257  
      *                        operation
 1258  
          * @return The retrieved list of information on the CLUs within the CLU set
 1259  
          *         (flattened and de-duped)
 1260  
          * @throws DoesNotExistException
 1261  
          *             cluSet not found
 1262  
          * @throws InvalidParameterException
 1263  
          *             invalid cluSetId
 1264  
          * @throws MissingParameterException
 1265  
          *             missing cluSetId
 1266  
          * @throws OperationFailedException
 1267  
          *             unable to complete request
 1268  
          * @throws PermissionDeniedException
 1269  
          *             authorization failure
 1270  
          */
 1271  
         public List<CluInfo> getClusFromCluSet(
 1272  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1273  
                         throws DoesNotExistException, InvalidParameterException,
 1274  
                         MissingParameterException, OperationFailedException,
 1275  
                         PermissionDeniedException;
 1276  
 
 1277  
         /**
 1278  
          * Retrieves the list of CLU Identifiers within a CLU Set. This only
 1279  
          * retrieves the direct members.
 1280  
          * 
 1281  
          * @param cluSetId
 1282  
          *            Identifier of the CLU set
 1283  
      * @param context         Context information containing the principalId
 1284  
      *                        and locale information about the caller of service
 1285  
      *                        operation
 1286  
          * @return The retrieved list of CLU Ids within the specified CLU set
 1287  
          *         (flattened and de-duped)
 1288  
          * @throws DoesNotExistException
 1289  
          *             cluSet not found
 1290  
          * @throws InvalidParameterException
 1291  
          *             invalid cluSetId
 1292  
          * @throws MissingParameterException
 1293  
          *             missing cluSetId
 1294  
          * @throws OperationFailedException
 1295  
          *             unable to complete request
 1296  
          * @throws PermissionDeniedException
 1297  
          *             authorization failure
 1298  
          */
 1299  
         public List<String> getCluIdsFromCluSet(
 1300  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1301  
                         throws DoesNotExistException, InvalidParameterException,
 1302  
                         MissingParameterException, OperationFailedException,
 1303  
                         PermissionDeniedException;
 1304  
 
 1305  
         /**
 1306  
          * Retrieves the full list of CLUs in this CLU set or any cluset that is
 1307  
          * included within that.
 1308  
          * 
 1309  
          * @param cluSetId
 1310  
          *            Identifier of the CLU set
 1311  
      * @param context         Context information containing the principalId
 1312  
      *                        and locale information about the caller of service
 1313  
      *                        operation
 1314  
          * @return The retrieved list of information on the CLUs
 1315  
          * @throws DoesNotExistException
 1316  
          *             cluSet not found
 1317  
          * @throws InvalidParameterException
 1318  
          *             invalid cluSetId
 1319  
          * @throws MissingParameterException
 1320  
          *             missing cluSetId
 1321  
          * @throws OperationFailedException
 1322  
          *             unable to complete request
 1323  
          * @throws PermissionDeniedException
 1324  
          *             authorization failure
 1325  
          */
 1326  
         public List<CluInfo> getAllClusInCluSet(
 1327  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1328  
                         throws DoesNotExistException, InvalidParameterException,
 1329  
                         MissingParameterException, OperationFailedException,
 1330  
                         PermissionDeniedException;
 1331  
 
 1332  
         /**
 1333  
          * Retrieves the list of CLU Identifiers within a CLU Set or any cluset that
 1334  
          * is included within that.
 1335  
          * 
 1336  
          * @param cluSetId
 1337  
          *            Identifier of the CLU set
 1338  
      * @param context         Context information containing the principalId
 1339  
      *                        and locale information about the caller of service
 1340  
      *                        operation
 1341  
          * @return The retrieved list of CLU Ids within the specified CLU set
 1342  
          * @throws DoesNotExistException
 1343  
          *             cluSet not found
 1344  
          * @throws InvalidParameterException
 1345  
          *             invalid cluSetId
 1346  
          * @throws MissingParameterException
 1347  
          *             missing cluSetId
 1348  
          * @throws OperationFailedException
 1349  
          *             unable to complete request
 1350  
          * @throws PermissionDeniedException
 1351  
          *             authorization failure
 1352  
          */
 1353  
         public List<String> getAllCluIdsInCluSet(
 1354  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1355  
                         throws DoesNotExistException, InvalidParameterException,
 1356  
                         MissingParameterException, OperationFailedException,
 1357  
                         PermissionDeniedException;
 1358  
 
 1359  
         /**
 1360  
          * Checks if a CLU is a member of a CLU set or any contained CLU set
 1361  
          * 
 1362  
          * @param cluId
 1363  
          *            Identifier of the CLU to check
 1364  
          * @param cluSetId
 1365  
          *            Identifier of the CLU set
 1366  
      * @param context         Context information containing the principalId
 1367  
      *                        and locale information about the caller of service
 1368  
      *                        operation
 1369  
          * @return True if the CLU is a member of the CLU Set
 1370  
          * @throws DoesNotExistException
 1371  
          *             clu, cluSet not found
 1372  
          * @throws InvalidParameterException
 1373  
          *             invalid cluId, cluSetId
 1374  
          * @throws MissingParameterException
 1375  
          *             missing cluId, cluSetId
 1376  
          * @throws OperationFailedException
 1377  
          *             unable to complete request
 1378  
          * @throws PermissionDeniedException
 1379  
          *             authorization failure
 1380  
          */
 1381  
         public Boolean isCluInCluSet(@WebParam(name = "cluId") String cluId,
 1382  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 1383  
                         throws DoesNotExistException, InvalidParameterException,
 1384  
                         MissingParameterException, OperationFailedException,
 1385  
                         PermissionDeniedException;
 1386  
 
 1387  
 
 1388  
         /**
 1389  
          * Validates a CLU. Depending on the value of validationType, this
 1390  
          * validation could be limited to tests on just the current object and its
 1391  
          * directly contained sub-objects or expanded to perform all tests related
 1392  
          * to this object. If an identifier is present for the CLU (and/or one of
 1393  
          * its contained sub-objects) and a record is found for that identifier, the
 1394  
          * validation checks if the CLU can be shifted to the new values. If an
 1395  
          * identifier is not present or a record cannot be found for the identifier,
 1396  
          * it is assumed that the record does not exist and as such, the checks
 1397  
          * performed will be much shallower, typically mimicking those performed by
 1398  
          * setting the validationType to the current object.
 1399  
          * 
 1400  
          * @param validationType
 1401  
          *            identifier of the extent of validation
 1402  
          * @param cluInfo
 1403  
          *            CLU information to be tested.
 1404  
      * @param context         Context information containing the principalId
 1405  
      *                        and locale information about the caller of service
 1406  
      *                        operation
 1407  
          * @return results from performing the validation
 1408  
          * @throws DoesNotExistException
 1409  
          *             validationTypeKey not found
 1410  
          * @throws InvalidParameterException
 1411  
          *             invalid validationTypeKey, cluInfo
 1412  
          * @throws MissingParameterException
 1413  
          *             missing validationTypeKey, cluInfo
 1414  
          * @throws OperationFailedException
 1415  
          *             unable to complete request
 1416  
          */
 1417  
         public List<ValidationResultInfo> validateClu(
 1418  
                         @WebParam(name = "validationType") String validationType,
 1419  
                         @WebParam(name = "cluInfo") CluInfo cluInfo, @WebParam(name = "context") ContextInfo context)
 1420  
                         throws DoesNotExistException, InvalidParameterException,
 1421  
                         MissingParameterException, OperationFailedException;
 1422  
 
 1423  
         /**
 1424  
          * Creates a new CLU
 1425  
          * 
 1426  
          * @param luTypeKey
 1427  
          *            identifier of the LU Type for the CLU being created
 1428  
          * @param cluInfo
 1429  
          *            information about the CLU being created
 1430  
      * @param context         Context information containing the principalId
 1431  
      *                        and locale information about the caller of service
 1432  
      *                        operation
 1433  
          * @return the created CLU information
 1434  
          * @throws AlreadyExistsException
 1435  
          *             CLU already exists
 1436  
          * @throws DataValidationErrorException
 1437  
          *             One or more values invalid for this operation
 1438  
          * @throws DoesNotExistException
 1439  
          *             luTypeKey not found
 1440  
          * @throws InvalidParameterException
 1441  
          *             invalid luTypeKey, cluInfo
 1442  
          * @throws MissingParameterException
 1443  
          *             missing luTypeKey, cluInfo
 1444  
          * @throws OperationFailedException
 1445  
          *             unable to complete request
 1446  
          * @throws PermissionDeniedException
 1447  
          *             authorization failure
 1448  
          */
 1449  
         public CluInfo createClu(@WebParam(name = "luTypeKey") String luTypeKey,
 1450  
                         @WebParam(name = "cluInfo") CluInfo cluInfo, @WebParam(name = "context") ContextInfo context)
 1451  
                         throws AlreadyExistsException, DataValidationErrorException,
 1452  
                         DoesNotExistException, InvalidParameterException,
 1453  
                         MissingParameterException, OperationFailedException,
 1454  
                         PermissionDeniedException;
 1455  
 
 1456  
         /**
 1457  
          * Updates an existing CLU
 1458  
          * 
 1459  
          * @param cluId
 1460  
          *            identifier for the CLU to be updated
 1461  
          * @param cluInfo
 1462  
          *            updated information about the CLU
 1463  
      * @param context         Context information containing the principalId
 1464  
      *                        and locale information about the caller of service
 1465  
      *                        operation
 1466  
          * @return the updated CLU information
 1467  
          * @throws DataValidationErrorException
 1468  
          *             One or more values invalid for this operation
 1469  
          * @throws DoesNotExistException
 1470  
          *             cluId not found
 1471  
          * @throws InvalidParameterException
 1472  
          *             invalid cluId, cluInfo
 1473  
          * @throws MissingParameterException
 1474  
          *             missing cluId, cluInfo
 1475  
          * @throws OperationFailedException
 1476  
          *             unable to complete request
 1477  
          * @throws PermissionDeniedException
 1478  
          *             authorization failure
 1479  
          * @throws VersionMismatchException
 1480  
          *             The action was attempted on an out of date version
 1481  
          */
 1482  
         public CluInfo updateClu(@WebParam(name = "cluId") String cluId,
 1483  
                         @WebParam(name = "cluInfo") CluInfo cluInfo, @WebParam(name = "context") ContextInfo context)
 1484  
                         throws DataValidationErrorException, DoesNotExistException,
 1485  
                         InvalidParameterException, MissingParameterException,
 1486  
                         OperationFailedException, PermissionDeniedException,
 1487  
                         VersionMismatchException;
 1488  
 
 1489  
         /**
 1490  
          * Deletes an existing CLU
 1491  
          * 
 1492  
          * @param cluId
 1493  
          *            identifier for the CLU to be deleted
 1494  
      * @param context         Context information containing the principalId
 1495  
      *                        and locale information about the caller of service
 1496  
      *                        operation
 1497  
          * @return status of the operation
 1498  
          * @throws DoesNotExistException
 1499  
          *             cluId not found
 1500  
          * @throws InvalidParameterException
 1501  
          *             invalid cluId
 1502  
          * @throws MissingParameterException
 1503  
          *             missing cluId
 1504  
          * @throws DependentObjectsExistException
 1505  
          *             delete would leave orphaned objects or violate integrity
 1506  
          *             constraints
 1507  
          * @throws OperationFailedException
 1508  
          *             unable to complete request
 1509  
          * @throws PermissionDeniedException
 1510  
          *             authorization failure
 1511  
          */
 1512  
         public StatusInfo deleteClu(@WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 1513  
                         throws DoesNotExistException, InvalidParameterException,
 1514  
                         MissingParameterException, DependentObjectsExistException,
 1515  
                         OperationFailedException, PermissionDeniedException;
 1516  
 
 1517  
         /**
 1518  
          * Creates a new CLU version based on the current clu
 1519  
          * 
 1520  
          * @param cluId
 1521  
          *            identifier for the CLU to be versioned
 1522  
          * @param versionComment
 1523  
          *            comment for the current version
 1524  
      * @param context         Context information containing the principalId
 1525  
      *                        and locale information about the caller of service
 1526  
      *                        operation
 1527  
          * @return the new versioned CLU information
 1528  
          * @throws DataValidationErrorException
 1529  
          *             One or more values invalid for this operation
 1530  
          * @throws DoesNotExistException
 1531  
          *             cluId not found
 1532  
          * @throws InvalidParameterException
 1533  
          *             invalid cluId
 1534  
          * @throws MissingParameterException
 1535  
          *             missing cluId
 1536  
          * @throws OperationFailedException
 1537  
          *             unable to complete request
 1538  
          * @throws PermissionDeniedException
 1539  
          *             authorization failure
 1540  
          * @throws VersionMismatchException
 1541  
          *             The action was attempted on an out of date version
 1542  
          */
 1543  
         public CluInfo createNewCluVersion(@WebParam(name = "cluId") String cluId,
 1544  
                         @WebParam(name = "versionComment") String versionComment, @WebParam(name = "context") ContextInfo context)
 1545  
                         throws DataValidationErrorException, DoesNotExistException,
 1546  
                         InvalidParameterException, MissingParameterException,
 1547  
                         OperationFailedException, PermissionDeniedException,
 1548  
                         VersionMismatchException;
 1549  
 
 1550  
         /**
 1551  
          * Sets a specific version of the Clu as current. The sequence number must
 1552  
          * be greater than the existing current Clu version. This will truncate the
 1553  
          * current version's end date to the currentVersionStart param. If a Clu
 1554  
          * exists which is set to become current in the future, that clu's
 1555  
          * currentVersionStart and CurrentVersionEnd will be nullified. The
 1556  
          * currentVersionStart must be in the future to prevent changing historic
 1557  
          * data.
 1558  
          * 
 1559  
          * @param cluVersionId
 1560  
          *            Version Specific Id of the Clu
 1561  
          * @param currentVersionStart
 1562  
          *            Date when this clu becomes current. Must be in the future and
 1563  
          *            be after the most current clu's start date.
 1564  
      * @param context         Context information containing the principalId
 1565  
      *                        and locale information about the caller of service
 1566  
      *                        operation
 1567  
          * @return status of the operation
 1568  
          * @throws DoesNotExistException
 1569  
          *             cluVersionId not found
 1570  
          * @throws InvalidParameterException
 1571  
          *             invalid cluVersionId, previousState, newState
 1572  
          * @throws MissingParameterException
 1573  
          *             missing cluVersionId, previousState, newState
 1574  
          * @throws IllegalVersionSequencingException
 1575  
          *             a Clu with higher sequence number from the one provided is
 1576  
          *             marked current
 1577  
          * @throws OperationFailedException
 1578  
          *             unable to complete request
 1579  
          * @throws PermissionDeniedException
 1580  
          *             authorization failure
 1581  
          */
 1582  
         public StatusInfo setCurrentCluVersion(
 1583  
                         @WebParam(name = "cluVersionId") String cluVersionId,
 1584  
                         @WebParam(name = "currentVersionStart") Date currentVersionStart, @WebParam(name = "context") ContextInfo context)
 1585  
                         throws DoesNotExistException, InvalidParameterException,
 1586  
                         MissingParameterException, IllegalVersionSequencingException,
 1587  
                         OperationFailedException, PermissionDeniedException;
 1588  
 
 1589  
         /**
 1590  
          * Updates the state of the specified CLU
 1591  
          * 
 1592  
          * @param cluId
 1593  
          *            identifier for the CLU to be updated
 1594  
          * @param luState
 1595  
          *            new state for the CLU. Value is expected to be constrained to
 1596  
          *            those in the luState enumeration.
 1597  
      * @param context         Context information containing the principalId
 1598  
      *                        and locale information about the caller of service
 1599  
      *                        operation
 1600  
          * @return the updated CLU information
 1601  
          * @throws DataValidationErrorException
 1602  
          *             new state not valid for existing state of CLU
 1603  
          * @throws DoesNotExistException
 1604  
          *             cluId, luState not found
 1605  
          * @throws InvalidParameterException
 1606  
          *             invalid cluId, luState
 1607  
          * @throws MissingParameterException
 1608  
          *             missing cluId, luState
 1609  
          * @throws OperationFailedException
 1610  
          *             unable to complete request
 1611  
          * @throws PermissionDeniedException
 1612  
          *             authorization failure
 1613  
          */
 1614  
         public CluInfo updateCluState(@WebParam(name = "cluId") String cluId,
 1615  
                         @WebParam(name = "luState") String luState, @WebParam(name = "context") ContextInfo context)
 1616  
                         throws DataValidationErrorException, DoesNotExistException,
 1617  
                         InvalidParameterException, MissingParameterException,
 1618  
                         OperationFailedException, PermissionDeniedException;
 1619  
 
 1620  
         /**
 1621  
          * Validates a cluCluRelation. Depending on the value of validationType,
 1622  
          * this validation could be limited to tests on just the current object and
 1623  
          * its directly contained sub-objects or expanded to perform all tests
 1624  
          * related to this object. If an identifier is present for the
 1625  
          * cluCluRelation (and/or one of its contained sub-objects) and a record is
 1626  
          * found for that identifier, the validation checks if the relationship can
 1627  
          * be shifted to the new values. If an identifier is not present or a record
 1628  
          * cannot be found for the identifier, it is assumed that the record does
 1629  
          * not exist and as such, the checks performed will be much shallower,
 1630  
          * typically mimicking those performed by setting the validationType to the
 1631  
          * current object.
 1632  
          * 
 1633  
          * @param validationType
 1634  
          *            identifier of the extent of validation
 1635  
          * @param cluCluRelationInfo
 1636  
          *            cluCluRelation information to be tested.
 1637  
      * @param context         Context information containing the principalId
 1638  
      *                        and locale information about the caller of service
 1639  
      *                        operation
 1640  
          * @return results from performing the validation
 1641  
          * @throws DoesNotExistException
 1642  
          *             validationTypeKey not found
 1643  
          * @throws InvalidParameterException
 1644  
          *             invalid validationTypeKey, cluCluRelationInfo
 1645  
          * @throws MissingParameterException
 1646  
          *             missing validationTypeKey, cluCluRelationInfo
 1647  
          * @throws OperationFailedException
 1648  
          *             unable to complete request
 1649  
          */
 1650  
         public List<ValidationResultInfo> validateCluCluRelation(
 1651  
                         @WebParam(name = "validationType") String validationType,
 1652  
                         @WebParam(name = "cluCluRelationInfo") CluCluRelationInfo cluCluRelationInfo, @WebParam(name = "context") ContextInfo context)
 1653  
                         throws DoesNotExistException, InvalidParameterException,
 1654  
                         MissingParameterException, OperationFailedException;
 1655  
 
 1656  
         /**
 1657  
          * Create a directional relationship between two CLUs
 1658  
          * 
 1659  
          * @param cluId
 1660  
          *            identifier of the first CLU in the relationship - The From or
 1661  
          *            Parent of the relation
 1662  
          * @param relatedCluId
 1663  
          *            identifier of the second CLU in the relationship to be related
 1664  
          *            to - the To or Child of the Relation
 1665  
          * @param luLuRelationTypeKey
 1666  
          *            the LU to LU relationship type of the relationship
 1667  
          * @param cluCluRelationInfo
 1668  
          *            information about the relationship between the two CLUs
 1669  
      * @param context         Context information containing the principalId
 1670  
      *                        and locale information about the caller of service
 1671  
      *                        operation
 1672  
          * @return the created CLU to CLU relation information
 1673  
          * @throws AlreadyExistsException
 1674  
          *             relationship already exists
 1675  
          * @throws CircularRelationshipException
 1676  
          *             cluId equals relatedCluId
 1677  
          * @throws DataValidationErrorException
 1678  
          *             One or more values invalid for this operation
 1679  
          * @throws DoesNotExistException
 1680  
          *             cluId, relatedCluId, luLuRelationType not found
 1681  
          * @throws InvalidParameterException
 1682  
          *             invalid cluId, relatedCluId, luluRelationType,
 1683  
          *             cluCluRelationInfo
 1684  
          * @throws MissingParameterException
 1685  
          *             missing cluId, relatedCluId, luluRelationType,
 1686  
          *             cluCluRelationInfo
 1687  
          * @throws OperationFailedException
 1688  
          *             unable to complete request
 1689  
          * @throws PermissionDeniedException
 1690  
          *             authorization failure
 1691  
          */
 1692  
         public CluCluRelationInfo createCluCluRelation(
 1693  
                         @WebParam(name = "cluId") String cluId,
 1694  
                         @WebParam(name = "relatedCluId") String relatedCluId,
 1695  
                         @WebParam(name = "luLuRelationTypeKey") String luLuRelationTypeKey,
 1696  
                         @WebParam(name = "cluCluRelationInfo") CluCluRelationInfo cluCluRelationInfo, @WebParam(name = "context") ContextInfo context)
 1697  
                         throws AlreadyExistsException, CircularRelationshipException,
 1698  
                         DataValidationErrorException, DoesNotExistException,
 1699  
                         InvalidParameterException, MissingParameterException,
 1700  
                         OperationFailedException, PermissionDeniedException;
 1701  
 
 1702  
         /**
 1703  
          * Updates a relationship between two CLUs
 1704  
          * 
 1705  
          * @param cluCluRelationId
 1706  
          *            identifier of the CLU to CLU relation to be updated
 1707  
          * @param cluCluRelationInfo
 1708  
          *            changed information about the CLU to CLU relationship
 1709  
      * @param context         Context information containing the principalId
 1710  
      *                        and locale information about the caller of service
 1711  
      *                        operation
 1712  
          * @return the updated CLU to CLU relation information
 1713  
          * @throws DataValidationErrorException
 1714  
          *             One or more values invalid for this operation
 1715  
          * @throws DoesNotExistException
 1716  
          *             cluCluRelation not found
 1717  
          * @throws InvalidParameterException
 1718  
          *             invalid cluCluRelationId, cluCluRelationInfo
 1719  
          * @throws MissingParameterException
 1720  
          *             missing cluCluRelationId, cluCluRelationInfo
 1721  
          * @throws OperationFailedException
 1722  
          *             unable to complete request
 1723  
          * @throws PermissionDeniedException
 1724  
          *             authorization failure
 1725  
          * @throws VersionMismatchException
 1726  
          *             The action was attempted on an out of date version.
 1727  
          */
 1728  
         public CluCluRelationInfo updateCluCluRelation(
 1729  
                         @WebParam(name = "cluCluRelationId") String cluCluRelationId,
 1730  
                         @WebParam(name = "cluCluRelationInfo") CluCluRelationInfo cluCluRelationInfo, @WebParam(name = "context") ContextInfo context)
 1731  
                         throws DataValidationErrorException, DoesNotExistException,
 1732  
                         InvalidParameterException, MissingParameterException,
 1733  
                         OperationFailedException, PermissionDeniedException,
 1734  
                         VersionMismatchException;
 1735  
 
 1736  
         /**
 1737  
          * Deletes a relationship between two CLUs
 1738  
          * 
 1739  
          * @param cluCluRelationId
 1740  
          *            identifier of CLU to CLU relationship to delete
 1741  
      * @param context         Context information containing the principalId
 1742  
      *                        and locale information about the caller of service
 1743  
      *                        operation
 1744  
          * @return status of the operation (success or failure)
 1745  
          * @throws DoesNotExistException
 1746  
          *             cluCluRelation not found
 1747  
          * @throws InvalidParameterException
 1748  
          *             invalid cluCluRelationId
 1749  
          * @throws MissingParameterException
 1750  
          *             missing cluCluRelationId
 1751  
          * @throws OperationFailedException
 1752  
          *             unable to complete request
 1753  
          * @throws PermissionDeniedException
 1754  
          *             authorization failure
 1755  
          */
 1756  
         public StatusInfo deleteCluCluRelation(
 1757  
                         @WebParam(name = "cluCluRelationId") String cluCluRelationId, @WebParam(name = "context") ContextInfo context)
 1758  
                         throws DoesNotExistException, InvalidParameterException,
 1759  
                         MissingParameterException, OperationFailedException,
 1760  
                         PermissionDeniedException;
 1761  
 
 1762  
         /**
 1763  
          * Validates information about publication for a clu. Depending on the value
 1764  
          * of validationType, this validation could be limited to tests on just the
 1765  
          * current object and its directly contained sub-objects or expanded to
 1766  
          * perform all tests related to this object. If an identifier is present for
 1767  
          * the clu publication object (and/or one of its contained sub-objects) and
 1768  
          * a record is found for that identifier, the validation checks if the clu
 1769  
          * publication object can be shifted to the new values. If an identifier is
 1770  
          * not present or a record cannot be found for the identifier, it is assumed
 1771  
          * that the record does not exist and as such, the checks performed will be
 1772  
          * much shallower, typically mimicking those performed by setting the
 1773  
          * validationType to the current object.
 1774  
          * 
 1775  
          * @param validationType
 1776  
          *            identifier of the extent of validation
 1777  
          * @param cluPublicationInfo
 1778  
          *            CLU publication information to be tested.
 1779  
      * @param context         Context information containing the principalId
 1780  
      *                        and locale information about the caller of service
 1781  
      *                        operation
 1782  
          * @return results from performing the validation
 1783  
          * @throws DoesNotExistException
 1784  
          *             validationTypeKey not found
 1785  
          * @throws InvalidParameterException
 1786  
          *             invalid validationTypeKey, cluPublicationInfo
 1787  
          * @throws MissingParameterException
 1788  
          *             missing validationTypeKey, cluPublicationInfo
 1789  
          * @throws OperationFailedException
 1790  
          *             unable to complete request
 1791  
          */
 1792  
         public List<ValidationResultInfo> validateCluPublication(
 1793  
                         @WebParam(name = "validationType") String validationType,
 1794  
                         @WebParam(name = "cluPublicationInfo") CluPublicationInfo cluPublicationInfo, @WebParam(name = "context") ContextInfo context)
 1795  
                         throws DoesNotExistException, InvalidParameterException,
 1796  
                         MissingParameterException, OperationFailedException;
 1797  
 
 1798  
         /**
 1799  
          * Create a clu publication object, which contains information about
 1800  
          * publication for a clu.
 1801  
          * 
 1802  
          * @param cluId
 1803  
          *            identifier of a clu
 1804  
          * @param luPublicationType
 1805  
          *            type of lu publication
 1806  
          * @param cluPublicationInfo
 1807  
          *            information about publication for a clu
 1808  
      * @param context         Context information containing the principalId
 1809  
      *                        and locale information about the caller of service
 1810  
      *                        operation
 1811  
          * @return information about the created clu publication object
 1812  
          * @throws AlreadyExistsException
 1813  
          *             clu publication object already exists
 1814  
          * @throws DataValidationErrorException
 1815  
          *             One or more values invalid for this operation
 1816  
          * @throws InvalidParameterException
 1817  
          *             invalid cluId, luPublicationType, cluPublicationInfo
 1818  
          * @throws MissingParameterException
 1819  
          *             missing cluId, luPublicationType, cluPublicationInfo
 1820  
          * @throws OperationFailedException
 1821  
          *             unable to complete request
 1822  
          * @throws PermissionDeniedException
 1823  
          *             authorization failure
 1824  
          */
 1825  
         public CluPublicationInfo createCluPublication(
 1826  
                         @WebParam(name = "cluId") String cluId,
 1827  
                         @WebParam(name = "luPublicationType") String luPublicationType,
 1828  
                         @WebParam(name = "cluPublicationInfo") CluPublicationInfo cluPublicationInfo, @WebParam(name = "context") ContextInfo context)
 1829  
                         throws AlreadyExistsException, DataValidationErrorException,
 1830  
                         InvalidParameterException, MissingParameterException,
 1831  
                         OperationFailedException, PermissionDeniedException;
 1832  
 
 1833  
         /**
 1834  
          * Updates an existing clu publication object
 1835  
          * 
 1836  
          * @param cluPublicationId
 1837  
          *            identifier for the clu publication object to be updated
 1838  
          * @param cluPublicationInfo
 1839  
          *            updated information about the clu publication object
 1840  
      * @param context         Context information containing the principalId
 1841  
      *                        and locale information about the caller of service
 1842  
      *                        operation
 1843  
          * @return the updated clu publication information
 1844  
          * @throws DataValidationErrorException
 1845  
          *             One or more values invalid for this operation
 1846  
          * @throws DoesNotExistException
 1847  
          *             cluPublication not found
 1848  
          * @throws InvalidParameterException
 1849  
          *             invalid cluPublicationId, cluPublicationInfo
 1850  
          * @throws MissingParameterException
 1851  
          *             missing cluPublicationId, cluPublicationInfo
 1852  
          * @throws OperationFailedException
 1853  
          *             unable to complete request
 1854  
          * @throws PermissionDeniedException
 1855  
          *             authorization failure
 1856  
          * @throws VersionMismatchException
 1857  
          *             The action was attempted on an out of date version.
 1858  
          */
 1859  
         public CluPublicationInfo updateCluPublication(
 1860  
                         @WebParam(name = "cluPublicationId") String cluPublicationId,
 1861  
                         @WebParam(name = "cluPublicationInfo") CluPublicationInfo cluPublicationInfo, @WebParam(name = "context") ContextInfo context)
 1862  
                         throws DataValidationErrorException, DoesNotExistException,
 1863  
                         InvalidParameterException, MissingParameterException,
 1864  
                         OperationFailedException, PermissionDeniedException,
 1865  
                         VersionMismatchException;
 1866  
 
 1867  
         /**
 1868  
          * Deletes an existing clu publication object
 1869  
          * 
 1870  
          * @param cluPublicationId
 1871  
          *            identifier for the clu publication object to be deleted
 1872  
      * @param context         Context information containing the principalId
 1873  
      *                        and locale information about the caller of service
 1874  
      *                        operation
 1875  
          * @return status of the operation
 1876  
          * @throws DoesNotExistException
 1877  
          *             cluPublication not found
 1878  
          * @throws InvalidParameterException
 1879  
          *             invalid cluPublicationId
 1880  
          * @throws MissingParameterException
 1881  
          *             missing cluPublicationId
 1882  
          * @throws DependentObjectsExistException
 1883  
          *             delete would leave orphaned objects or violate integrity
 1884  
          *             constraints
 1885  
          * @throws OperationFailedException
 1886  
          *             unable to complete request
 1887  
          * @throws PermissionDeniedException
 1888  
          *             authorization failure
 1889  
          */
 1890  
         public StatusInfo deleteCluPublication(
 1891  
                         @WebParam(name = "cluPublicationId") String cluPublicationId, @WebParam(name = "context") ContextInfo context)
 1892  
                         throws DoesNotExistException, InvalidParameterException,
 1893  
                         MissingParameterException, DependentObjectsExistException,
 1894  
                         OperationFailedException, PermissionDeniedException;
 1895  
 
 1896  
         /**
 1897  
          * Validates information about results for a clu. Depending on the value of
 1898  
          * validationType, this validation could be limited to tests on just the
 1899  
          * current object and its directly contained sub-objects or expanded to
 1900  
          * perform all tests related to this object. If an identifier is present for
 1901  
          * the clu result object (and/or one of its contained sub-objects) and a
 1902  
          * record is found for that identifier, the validation checks if the clu
 1903  
          * result object can be shifted to the new values. If an identifier is not
 1904  
          * present or a record cannot be found for the identifier, it is assumed
 1905  
          * that the record does not exist and as such, the checks performed will be
 1906  
          * much shallower, typically mimicking those performed by setting the
 1907  
          * validationType to the current object.
 1908  
          * 
 1909  
          * @param validationType
 1910  
          *            identifier of the extent of validation
 1911  
          * @param cluResultInfo
 1912  
          *            CLU result information to be tested.
 1913  
      * @param context         Context information containing the principalId
 1914  
      *                        and locale information about the caller of service
 1915  
      *                        operation
 1916  
          * @return results from performing the validation
 1917  
          * @throws DoesNotExistException
 1918  
          *             validationTypeKey not found
 1919  
          * @throws InvalidParameterException
 1920  
          *             invalid validationTypeKey, cluResultInfo
 1921  
          * @throws MissingParameterException
 1922  
          *             missing validationTypeKey, cluResultInfo
 1923  
          * @throws OperationFailedException
 1924  
          *             unable to complete request
 1925  
          */
 1926  
         public List<ValidationResultInfo> validateCluResult(
 1927  
                         @WebParam(name = "validationType") String validationType,
 1928  
                         @WebParam(name = "cluResultInfo") CluResultInfo cluResultInfo, @WebParam(name = "context") ContextInfo context)
 1929  
                         throws DoesNotExistException, InvalidParameterException,
 1930  
                         MissingParameterException, OperationFailedException;
 1931  
 
 1932  
         /**
 1933  
          * Create a clu result object, which contains information about potential
 1934  
          * results for a clu.
 1935  
          * 
 1936  
          * @param cluId
 1937  
          *            identifier of a clu
 1938  
          * @param cluResultType
 1939  
          *            type of clu result
 1940  
          * @param cluResultInfo
 1941  
          *            information about potential results for a clu
 1942  
      * @param context         Context information containing the principalId
 1943  
      *                        and locale information about the caller of service
 1944  
      *                        operation
 1945  
          * @return information about the created clu result
 1946  
          * @throws AlreadyExistsException
 1947  
          *             clu result already exists
 1948  
          * @throws DataValidationErrorException
 1949  
          *             One or more values invalid for this operation
 1950  
          * @throws InvalidParameterException
 1951  
          *             invalid cluId, cluResultType, cluResultInfo
 1952  
          * @throws MissingParameterException
 1953  
          *             missing cluId, cluResultType, cluResultInfo
 1954  
          * @throws OperationFailedException
 1955  
          *             unable to complete request
 1956  
          * @throws PermissionDeniedException
 1957  
          *             authorization failure
 1958  
          * @throws DoesNotExistException
 1959  
          *             resultUsageTypeKey not found
 1960  
          */
 1961  
         public CluResultInfo createCluResult(
 1962  
                         @WebParam(name = "cluId") String cluId,
 1963  
                         @WebParam(name = "cluResultType") String cluResultType,
 1964  
                         @WebParam(name = "cluResultInfo") CluResultInfo cluResultInfo, @WebParam(name = "context") ContextInfo context)
 1965  
                         throws AlreadyExistsException, DataValidationErrorException,
 1966  
                         InvalidParameterException, MissingParameterException,
 1967  
                         OperationFailedException, PermissionDeniedException,
 1968  
                         DoesNotExistException;
 1969  
 
 1970  
         /**
 1971  
          * Updates an existing clu result
 1972  
          * 
 1973  
          * @param cluResultId
 1974  
          *            identifier for the clu result to be updated
 1975  
          * @param cluResultInfo
 1976  
          *            updated information about the clu result
 1977  
      * @param context         Context information containing the principalId
 1978  
      *                        and locale information about the caller of service
 1979  
      *                        operation
 1980  
          * @return the updated clu result information
 1981  
          * @throws DataValidationErrorException
 1982  
          *             One or more values invalid for this operation
 1983  
          * @throws DoesNotExistException
 1984  
          *             cluResult not found
 1985  
          * @throws InvalidParameterException
 1986  
          *             invalid cluResultId, cluResultInfo
 1987  
          * @throws MissingParameterException
 1988  
          *             missing cluResultId, cluResultInfo
 1989  
          * @throws OperationFailedException
 1990  
          *             unable to complete request
 1991  
          * @throws PermissionDeniedException
 1992  
          *             authorization failure
 1993  
          * @throws VersionMismatchException
 1994  
          *             The action was attempted on an out of date version.
 1995  
          */
 1996  
         public CluResultInfo updateCluResult(
 1997  
                         @WebParam(name = "cluResultId") String cluResultId,
 1998  
                         @WebParam(name = "cluResultInfo") CluResultInfo cluResultInfo, @WebParam(name = "context") ContextInfo context)
 1999  
                         throws DataValidationErrorException, DoesNotExistException,
 2000  
                         InvalidParameterException, MissingParameterException,
 2001  
                         OperationFailedException, PermissionDeniedException,
 2002  
                         VersionMismatchException;
 2003  
 
 2004  
         /**
 2005  
          * Deletes an existing clu result
 2006  
          * 
 2007  
          * @param cluResultId
 2008  
          *            identifier for the clu result to be deleted
 2009  
      * @param context         Context information containing the principalId
 2010  
      *                        and locale information about the caller of service
 2011  
      *                        operation
 2012  
          * @return status of the operation
 2013  
          * @throws DoesNotExistException
 2014  
          *             cluResult not found
 2015  
          * @throws InvalidParameterException
 2016  
          *             invalid cluResultId
 2017  
          * @throws MissingParameterException
 2018  
          *             missing cluResultId
 2019  
          * @throws DependentObjectsExistException
 2020  
          *             delete would leave orphaned objects or violate integrity
 2021  
          *             constraints
 2022  
          * @throws OperationFailedException
 2023  
          *             unable to complete request
 2024  
          * @throws PermissionDeniedException
 2025  
          *             authorization failure
 2026  
          */
 2027  
         public StatusInfo deleteCluResult(
 2028  
                         @WebParam(name = "cluResultId") String cluResultId, @WebParam(name = "context") ContextInfo context)
 2029  
                         throws DoesNotExistException, InvalidParameterException,
 2030  
                         MissingParameterException, DependentObjectsExistException,
 2031  
                         OperationFailedException, PermissionDeniedException;
 2032  
 
 2033  
         /**
 2034  
          * Validates a cluLoRelation. Depending on the value of validationType, this
 2035  
          * validation could be limited to tests on just the current object and its
 2036  
          * directly contained sub-objects or expanded to perform all tests related
 2037  
          * to this object. If an identifier is present for the cluLoRelation (and/or
 2038  
          * one of its contained sub-objects) and a record is found for that
 2039  
          * identifier, the validation checks if the relationship can be shifted to
 2040  
          * the new values. If an identifier is not present or a record cannot be
 2041  
          * found for the identifier, it is assumed that the record does not exist
 2042  
          * and as such, the checks performed will be much shallower, typically
 2043  
          * mimicking those performed by setting the validationType to the current
 2044  
          * object.
 2045  
          * 
 2046  
          * @param validationType
 2047  
          *            identifier of the extent of validation
 2048  
          * @param cluLoRelationInfo
 2049  
          *            cluLoRelation information to be tested.
 2050  
      * @param context         Context information containing the principalId
 2051  
      *                        and locale information about the caller of service
 2052  
      *                        operation
 2053  
          * @return results from performing the validation
 2054  
          * @throws DoesNotExistException
 2055  
          *             validationTypeKey not found
 2056  
          * @throws InvalidParameterException
 2057  
          *             invalid validationTypeKey, cluLoRelationInfo
 2058  
          * @throws MissingParameterException
 2059  
          *             missing validationTypeKey, cluLoRelationInfo
 2060  
          * @throws OperationFailedException
 2061  
          *             unable to complete request
 2062  
          */
 2063  
         public List<ValidationResultInfo> validateCluLoRelation(
 2064  
                         @WebParam(name = "validationType") String validationType,
 2065  
                         @WebParam(name = "cluLoRelationInfo") CluLoRelationInfo cluLoRelationInfo, @WebParam(name = "context") ContextInfo context)
 2066  
                         throws DoesNotExistException, InvalidParameterException,
 2067  
                         MissingParameterException, OperationFailedException;
 2068  
 
 2069  
         /**
 2070  
          * Creates a relationship between a learning objective and a CLU.
 2071  
          * 
 2072  
          * @param cluId
 2073  
          *            CLU identifier
 2074  
          * @param loId
 2075  
          *            learning objective identifier
 2076  
          * @param cluLoRelationType
 2077  
          *            type of clu learning objective relationship
 2078  
          * @param cluLoRelationInfo
 2079  
          *            clu learning objective relationship information
 2080  
      * @param context         Context information containing the principalId
 2081  
      *                        and locale information about the caller of service
 2082  
      *                        operation
 2083  
          * @return the newly created clu learning objective relationship
 2084  
          * @throws AlreadyExistsException
 2085  
          *             connection between clu and learning objective already exists
 2086  
          * @throws DoesNotExistException
 2087  
          *             cluId, loId, cluLoRelationType not found
 2088  
          * @throws InvalidParameterException
 2089  
          *             one or more parameters invalid
 2090  
          * @throws MissingParameterException
 2091  
          *             one or more parameters not specified
 2092  
          * @throws OperationFailedException
 2093  
          *             unable to complete request
 2094  
          * @throws PermissionDeniedException
 2095  
          *             authorization failure
 2096  
          * @throws DataValidationErrorException
 2097  
          *             data validation error
 2098  
          */
 2099  
         public CluLoRelationInfo createCluLoRelation(
 2100  
                         @WebParam(name = "cluId") String cluId,
 2101  
                         @WebParam(name = "loId") String loId,
 2102  
                         @WebParam(name = "cluLoRelationType") String cluLoRelationType,
 2103  
                         @WebParam(name = "cluLoRelationInfo") CluLoRelationInfo cluLoRelationInfo, @WebParam(name = "context") ContextInfo context)
 2104  
                         throws AlreadyExistsException, DoesNotExistException,
 2105  
                         InvalidParameterException, MissingParameterException,
 2106  
                         OperationFailedException, PermissionDeniedException,
 2107  
                         DataValidationErrorException;
 2108  
 
 2109  
         /**
 2110  
          * Updates a relationship between a clu and learning objective
 2111  
          * 
 2112  
          * @param cluLoRelationId
 2113  
          *            identifier of the clu learning objective relationship to be
 2114  
          *            updated
 2115  
          * @param cluLoRelationInfo
 2116  
          *            information about the clu learning objective relationship to
 2117  
          *            be updated
 2118  
      * @param context         Context information containing the principalId
 2119  
      *                        and locale information about the caller of service
 2120  
      *                        operation
 2121  
          * @return the updated clu learning objective relationship information
 2122  
          * @throws DataValidationErrorException
 2123  
          *             One or more values invalid for this operation
 2124  
          * @throws DoesNotExistException
 2125  
          *             cluLoRelation not found
 2126  
          * @throws InvalidParameterException
 2127  
          *             one or more parameters invalid
 2128  
          * @throws MissingParameterException
 2129  
          *             one or more parameters missing
 2130  
          * @throws OperationFailedException
 2131  
          *             unable to complete request
 2132  
          * @throws PermissionDeniedException
 2133  
          *             authorization failure
 2134  
          * @throws VersionMismatchException
 2135  
          *             The action was attempted on an out of date version.
 2136  
          */
 2137  
         public CluLoRelationInfo updateCluLoRelation(
 2138  
                         @WebParam(name = "cluLoRelationId") String cluLoRelationId,
 2139  
                         @WebParam(name = "cluLoRelationInfo") CluLoRelationInfo cluLoRelationInfo, @WebParam(name = "context") ContextInfo context)
 2140  
                         throws DataValidationErrorException, DoesNotExistException,
 2141  
                         InvalidParameterException, MissingParameterException,
 2142  
                         OperationFailedException, PermissionDeniedException,
 2143  
                         VersionMismatchException;
 2144  
 
 2145  
         /**
 2146  
          * Removes a relationship between a learning objective and a Clu.
 2147  
          * 
 2148  
          * @param cluLoRelationId
 2149  
          *            CLU learning objective Relationship identifier
 2150  
      * @param context         Context information containing the principalId
 2151  
      *                        and locale information about the caller of service
 2152  
      *                        operation
 2153  
          * @return Status
 2154  
          * @throws DoesNotExistException
 2155  
          *             cluLoRelation not found
 2156  
          * @throws InvalidParameterException
 2157  
          *             invalid cluLoRelationId
 2158  
          * @throws MissingParameterException
 2159  
          *             cluLoRelationId not specified
 2160  
          * @throws OperationFailedException
 2161  
          *             unable to complete request
 2162  
          * @throws PermissionDeniedException
 2163  
          *             authorization failure
 2164  
          */
 2165  
         public StatusInfo deleteCluLoRelation(
 2166  
                         @WebParam(name = "cluLoRelationId") String cluLoRelationId, @WebParam(name = "context") ContextInfo context)
 2167  
                         throws DoesNotExistException, InvalidParameterException,
 2168  
                         MissingParameterException, OperationFailedException,
 2169  
                         PermissionDeniedException;
 2170  
 
 2171  
         /**
 2172  
          * Add a Resource requirement to a CLU
 2173  
          * 
 2174  
          * @param resourceTypeKey
 2175  
          *            identifier of the resource requirement type to be added to the
 2176  
          *            CLU
 2177  
          * @param cluId
 2178  
          *            identifier of the CLU
 2179  
      * @param context         Context information containing the principalId
 2180  
      *                        and locale information about the caller of service
 2181  
      *                        operation
 2182  
          * @return status of the operation (success or failure)
 2183  
          * @throws AlreadyExistsException
 2184  
          *             resourceTypeKey is already associated with the cluId
 2185  
          * @throws DoesNotExistException
 2186  
          *             resourceTypeKey or cluId not found
 2187  
          * @throws InvalidParameterException
 2188  
          *             resourceTypeKey or cluId invalid
 2189  
          * @throws MissingParameterException
 2190  
          *             resourceTypeKey or cluId missing
 2191  
          * @throws OperationFailedException
 2192  
          *             unable to complete request
 2193  
          * @throws PermissionDeniedException
 2194  
          *             authorization failure
 2195  
          */
 2196  
         public StatusInfo addCluResourceRequirement(
 2197  
                         @WebParam(name = "resourceTypeKey") String resourceTypeKey,
 2198  
                         @WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 2199  
                         throws AlreadyExistsException, DoesNotExistException,
 2200  
                         InvalidParameterException, MissingParameterException,
 2201  
                         OperationFailedException, PermissionDeniedException;
 2202  
 
 2203  
         /**
 2204  
          * Remove a Resource requirement from a CLU
 2205  
          * 
 2206  
          * @param resourceTypeKey
 2207  
          *            identifier of the resource type to be removed from the CLU
 2208  
          * @param cluId
 2209  
          *            identifier of the CLU
 2210  
      * @param context         Context information containing the principalId
 2211  
      *                        and locale information about the caller of service
 2212  
      *                        operation
 2213  
          * @return status of the operation (success or failure)
 2214  
          * @throws DoesNotExistException
 2215  
          *             resourceTypeKey or cluId or relationship not found
 2216  
          * @throws InvalidParameterException
 2217  
          *             resourceTypeKey or cluId invalid
 2218  
          * @throws MissingParameterException
 2219  
          *             resourceTypeKey or cluId missing
 2220  
          * @throws OperationFailedException
 2221  
          *             unable to complete request
 2222  
          * @throws PermissionDeniedException
 2223  
          *             authorization failure
 2224  
          */
 2225  
         public StatusInfo removeCluResourceRequirement(
 2226  
                         @WebParam(name = "resourceTypeKey") String resourceTypeKey,
 2227  
                         @WebParam(name = "cluId") String cluId, @WebParam(name = "context") ContextInfo context)
 2228  
                         throws DoesNotExistException, InvalidParameterException,
 2229  
                         MissingParameterException, OperationFailedException,
 2230  
                         PermissionDeniedException;
 2231  
 
 2232  
         /**
 2233  
          * Validates information about a clu set. Depending on the value of
 2234  
          * validationType, this validation could be limited to tests on just the
 2235  
          * current object and its directly contained sub-objects or expanded to
 2236  
          * perform all tests related to this object. If an identifier is present for
 2237  
          * the clu set (and/or one of its contained sub-objects) and a record is
 2238  
          * found for that identifier, the validation checks if the clu set can be
 2239  
          * shifted to the new values. If an identifier is not present or a record
 2240  
          * cannot be found for the identifier, it is assumed that the record does
 2241  
          * not exist and as such, the checks performed will be much shallower,
 2242  
          * typically mimicking those performed by setting the validationType to the
 2243  
          * current object.
 2244  
          * 
 2245  
          * @param validationType
 2246  
          *            identifier of the extent of validation
 2247  
          * @param cluSetInfo
 2248  
          *            CLU set information to be tested.
 2249  
      * @param context         Context information containing the principalId
 2250  
      *                        and locale information about the caller of service
 2251  
      *                        operation
 2252  
          * @return results from performing the validation
 2253  
          * @throws DoesNotExistException
 2254  
          *             validationTypeKey not found
 2255  
          * @throws InvalidParameterException
 2256  
          *             invalid validationTypeKey, cluSetInfo
 2257  
          * @throws MissingParameterException
 2258  
          *             missing validationTypeKey, cluSetInfo
 2259  
          * @throws OperationFailedException
 2260  
          *             unable to complete request
 2261  
          */
 2262  
         public List<ValidationResultInfo> validateCluSet(
 2263  
                         @WebParam(name = "validationType") String validationType,
 2264  
                         @WebParam(name = "cluSetInfo") CluSetInfo cluSetInfo, @WebParam(name = "context") ContextInfo context)
 2265  
                         throws DoesNotExistException, InvalidParameterException,
 2266  
                         MissingParameterException, OperationFailedException;
 2267  
 
 2268  
         /**
 2269  
          * Creates a CLU set.
 2270  
          * 
 2271  
          * @param cluSetType
 2272  
          *            type of the CLU set to be created
 2273  
          * @param cluSetInfo
 2274  
          *            information required to create a CLU set
 2275  
      * @param context         Context information containing the principalId
 2276  
      *                        and locale information about the caller of service
 2277  
      *                        operation
 2278  
          * @return the created CLU set information
 2279  
          * @throws AlreadyExistsException
 2280  
          *             the cluSet already exists
 2281  
          * @throws DataValidationErrorException
 2282  
          *             One or more values invalid for this operation
 2283  
          * @throws InvalidParameterException
 2284  
          *             invalid cluSetName, cluSetInfo
 2285  
          * @throws MissingParameterException
 2286  
          *             missing cluSetName, cluSetInfo
 2287  
          * @throws OperationFailedException
 2288  
          *             unable to complete request
 2289  
          * @throws PermissionDeniedException
 2290  
          *             authorization failure
 2291  
          * @throws UnsupportedActionException
 2292  
          *             CLU set need to be static or dynamic but not both
 2293  
          */
 2294  
         public CluSetInfo createCluSet(
 2295  
                         @WebParam(name = "cluSetType") String cluSetType,
 2296  
                         @WebParam(name = "cluSetInfo") CluSetInfo cluSetInfo, @WebParam(name = "context") ContextInfo context)
 2297  
                         throws AlreadyExistsException, DataValidationErrorException,
 2298  
                         InvalidParameterException, MissingParameterException,
 2299  
                         OperationFailedException, PermissionDeniedException,
 2300  
                         UnsupportedActionException;
 2301  
 
 2302  
         /**
 2303  
          * Update the information for a CLU set
 2304  
          * 
 2305  
          * @param cluSetId
 2306  
          *            identifier of the CLU set to be updated
 2307  
          * @param cluSetInfo
 2308  
          *            updated information about the CLU set
 2309  
      * @param context         Context information containing the principalId
 2310  
      *                        and locale information about the caller of service
 2311  
      *                        operation
 2312  
          * @return the updated CLU set information
 2313  
          * @throws DataValidationErrorException
 2314  
          *             One or more values invalid for this operation
 2315  
          * @throws DoesNotExistException
 2316  
          *             cluSet not found
 2317  
          * @throws InvalidParameterException
 2318  
          *             invalid cluSetId, cluSetInfo
 2319  
          * @throws MissingParameterException
 2320  
          *             missing cluSetId, cluSetInfo
 2321  
          * @throws OperationFailedException
 2322  
          *             unable to complete request
 2323  
          * @throws PermissionDeniedException
 2324  
          *             authorization failure
 2325  
          * @throws VersionMismatchException
 2326  
          *             The action was attempted on an out of date version.
 2327  
          * @throws UnsupportedActionException
 2328  
          *             CLU set need to be static or dynamic but not both
 2329  
          * @throws CircularRelationshipException
 2330  
          *             addedCluSetId cannot be added to the cluSetId
 2331  
          */
 2332  
         public CluSetInfo updateCluSet(
 2333  
                         @WebParam(name = "cluSetId") String cluSetId,
 2334  
                         @WebParam(name = "cluSetInfo") CluSetInfo cluSetInfo, @WebParam(name = "context") ContextInfo context)
 2335  
                         throws DataValidationErrorException, DoesNotExistException,
 2336  
                         InvalidParameterException, MissingParameterException,
 2337  
                         OperationFailedException, PermissionDeniedException,
 2338  
                         VersionMismatchException, UnsupportedActionException,
 2339  
                         CircularRelationshipException;
 2340  
 
 2341  
         /**
 2342  
          * Delete a CLU set
 2343  
          * 
 2344  
          * @param cluSetId
 2345  
          *            identifier of the CLU set to be deleted
 2346  
      * @param context         Context information containing the principalId
 2347  
      *                        and locale information about the caller of service
 2348  
      *                        operation
 2349  
          * @return status of the operation (success or failure)
 2350  
          * @throws DoesNotExistException
 2351  
          *             cluSet not found
 2352  
          * @throws InvalidParameterException
 2353  
          *             invalid cluSetId
 2354  
          * @throws MissingParameterException
 2355  
          *             missing cluSetId
 2356  
          * @throws OperationFailedException
 2357  
          *             unable to complete request
 2358  
          * @throws PermissionDeniedException
 2359  
          *             authorization failure
 2360  
          */
 2361  
         public StatusInfo deleteCluSet(@WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 2362  
                         throws DoesNotExistException, InvalidParameterException,
 2363  
                         MissingParameterException, OperationFailedException,
 2364  
                         PermissionDeniedException;
 2365  
 
 2366  
         /**
 2367  
          * Adds one CLU set to another
 2368  
          * 
 2369  
          * @param cluSetId
 2370  
          *            identifier of the host CLU set
 2371  
          * @param addedCluSetId
 2372  
          *            identifier of the CLU set to be added
 2373  
      * @param context         Context information containing the principalId
 2374  
      *                        and locale information about the caller of service
 2375  
      *                        operation
 2376  
          * @return status of the operation (success or failure)
 2377  
          * @throws CircularRelationshipException
 2378  
          *             addedCluSetId cannot be added to the cluSetId
 2379  
          * @throws DoesNotExistException
 2380  
          *             cluSet, addedCluSet not found
 2381  
          * @throws InvalidParameterException
 2382  
          *             invalid cluSetId, addedCluSetId
 2383  
          * @throws MissingParameterException
 2384  
          *             missing cluSetId, addedCluSetId
 2385  
          * @throws OperationFailedException
 2386  
          *             unable to complete request
 2387  
          * @throws PermissionDeniedException
 2388  
          *             authorization failure
 2389  
          * @throws UnsupportedActionException
 2390  
          *             CLU set is dynamically determined
 2391  
          */
 2392  
         public StatusInfo addCluSetToCluSet(
 2393  
                         @WebParam(name = "cluSetId") String cluSetId,
 2394  
                         @WebParam(name = "addedCluSetId") String addedCluSetId, @WebParam(name = "context") ContextInfo context)
 2395  
                         throws CircularRelationshipException, DoesNotExistException,
 2396  
                         InvalidParameterException, MissingParameterException,
 2397  
                         OperationFailedException, PermissionDeniedException,
 2398  
                         UnsupportedActionException;
 2399  
 
 2400  
         /**
 2401  
          * Adds a list of CLU sets to another CluSet. If any individual one would
 2402  
          * fail, then an error is returned and none are added.
 2403  
          * 
 2404  
          * @param cluSetId
 2405  
          *            identifier of the host CLU set
 2406  
          * @param addedCluSetIdList
 2407  
          *            list of identifiers of the CLU sets to be added
 2408  
      * @param context         Context information containing the principalId
 2409  
      *                        and locale information about the caller of service
 2410  
      *                        operation
 2411  
          * @return status of the operation (success or failure)
 2412  
          * @throws CircularRelationshipException
 2413  
          *             addedCluSetId cannot be added to the cluSetId
 2414  
          * @throws DoesNotExistException
 2415  
          *             cluSet, addedCluSet not found
 2416  
          * @throws InvalidParameterException
 2417  
          *             invalid cluSetId, addedCluSetId
 2418  
          * @throws MissingParameterException
 2419  
          *             missing cluSetId, addedCluSetId
 2420  
          * @throws OperationFailedException
 2421  
          *             unable to complete request
 2422  
          * @throws PermissionDeniedException
 2423  
          *             authorization failure
 2424  
          * @throws UnsupportedActionException
 2425  
          *             CLU set is dynamically determined
 2426  
          */
 2427  
         public StatusInfo addCluSetsToCluSet(
 2428  
                         @WebParam(name = "cluSetId") String cluSetId,
 2429  
                         @WebParam(name = "addedCluSetIdList") List<String> addedCluSetIdList, @WebParam(name = "context") ContextInfo context)
 2430  
                         throws CircularRelationshipException, DoesNotExistException,
 2431  
                         InvalidParameterException, MissingParameterException,
 2432  
                         OperationFailedException, PermissionDeniedException,
 2433  
                         UnsupportedActionException;
 2434  
 
 2435  
         /**
 2436  
          * Removes one CLU set from another
 2437  
          * 
 2438  
          * @param cluSetId
 2439  
          *            identifier of the host CLU set
 2440  
          * @param removedCluSetId
 2441  
          *            identifier of the CLU set to be removed
 2442  
      * @param context         Context information containing the principalId
 2443  
      *                        and locale information about the caller of service
 2444  
      *                        operation
 2445  
          * @return status of the operation (success or failure)
 2446  
          * @throws DoesNotExistException
 2447  
          *             cluSet, removedCluSet not found
 2448  
          * @throws InvalidParameterException
 2449  
          *             invalid cluSetId, removedCluSetId
 2450  
          * @throws MissingParameterException
 2451  
          *             missing cluSetId, removedCluSetId
 2452  
          * @throws OperationFailedException
 2453  
          *             unable to complete request
 2454  
          * @throws PermissionDeniedException
 2455  
          *             authorization failure
 2456  
          * @throws UnsupportedActionException
 2457  
          *             CLU set is dynamically determined
 2458  
          */
 2459  
         public StatusInfo removeCluSetFromCluSet(
 2460  
                         @WebParam(name = "cluSetId") String cluSetId,
 2461  
                         @WebParam(name = "removedCluSetId") String removedCluSetId, @WebParam(name = "context") ContextInfo context)
 2462  
                         throws DoesNotExistException, InvalidParameterException,
 2463  
                         MissingParameterException, OperationFailedException,
 2464  
                         PermissionDeniedException, UnsupportedActionException;
 2465  
 
 2466  
         /**
 2467  
          * Add a CLU to a CLU set
 2468  
          * 
 2469  
          * @param cluId
 2470  
          *            identifier of CLU to add to the CLU set
 2471  
          * @param cluSetId
 2472  
          *            identifier of the CLU set
 2473  
      * @param context         Context information containing the principalId
 2474  
      *                        and locale information about the caller of service
 2475  
      *                        operation
 2476  
          * @return status of the operation (success or failure)
 2477  
          * @throws DoesNotExistException
 2478  
          *             clu, cluSet not found
 2479  
          * @throws InvalidParameterException
 2480  
          *             invalid cluId, cluSetId
 2481  
          * @throws MissingParameterException
 2482  
          *             missing cluId, cluSetId
 2483  
          * @throws OperationFailedException
 2484  
          *             unable to complete request
 2485  
          * @throws PermissionDeniedException
 2486  
          *             authorization failure
 2487  
          * @throws UnsupportedActionException
 2488  
          *             CLU set is dynamically determined
 2489  
          */
 2490  
         public StatusInfo addCluToCluSet(@WebParam(name = "cluId") String cluId,
 2491  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 2492  
                         throws DoesNotExistException, InvalidParameterException,
 2493  
                         MissingParameterException, OperationFailedException,
 2494  
                         PermissionDeniedException, UnsupportedActionException;
 2495  
 
 2496  
         /**
 2497  
          * Adds a list of CLUs to a CLU set. If any individual one would fail, then
 2498  
          * an error is returned and none are added.
 2499  
          * 
 2500  
          * @param cluSetIds
 2501  
          *            list of identifiers of CLUs to add to the CLU set
 2502  
          * @param cluSetId
 2503  
          *            identifier of the CLU set to be added
 2504  
      * @param context         Context information containing the principalId
 2505  
      *                        and locale information about the caller of service
 2506  
      *                        operation
 2507  
          * @return status of the operation (success or failure)
 2508  
          * @throws DoesNotExistException
 2509  
          *             clu, cluSet not found
 2510  
          * @throws InvalidParameterException
 2511  
          *             invalid cluId, cluSetId
 2512  
          * @throws MissingParameterException
 2513  
          *             missing cluId, cluSetId
 2514  
          * @throws OperationFailedException
 2515  
          *             unable to complete request
 2516  
          * @throws PermissionDeniedException
 2517  
          *             authorization failure
 2518  
          * @throws UnsupportedActionException
 2519  
          *             CLU set is dynamically determined
 2520  
          */
 2521  
         public StatusInfo addClusToCluSet(
 2522  
                         @WebParam(name = "cluIdList") List<String> cluIdList,
 2523  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 2524  
                         throws DoesNotExistException, InvalidParameterException,
 2525  
                         MissingParameterException, OperationFailedException,
 2526  
                         PermissionDeniedException, UnsupportedActionException;
 2527  
 
 2528  
         /**
 2529  
          * Remove a CLU from a CLU set
 2530  
          * 
 2531  
          * @param cluId
 2532  
          *            identifier of CLU to remove from the CLU set
 2533  
          * @param cluSetId
 2534  
          *            identifier of the CLU set
 2535  
      * @param context         Context information containing the principalId
 2536  
      *                        and locale information about the caller of service
 2537  
      *                        operation
 2538  
          * @return status of the operation (success or failure)
 2539  
          * @throws DoesNotExistException
 2540  
          *             clu, cluSet not found
 2541  
          * @throws InvalidParameterException
 2542  
          *             invalid cluId, cluSetId
 2543  
          * @throws MissingParameterException
 2544  
          *             missing cluId, cluSetId
 2545  
          * @throws OperationFailedException
 2546  
          *             unable to complete request
 2547  
          * @throws PermissionDeniedException
 2548  
          *             authorization failure
 2549  
          * @throws UnsupportedActionException
 2550  
          *             CLU set is dynamically determined
 2551  
          */
 2552  
         public StatusInfo removeCluFromCluSet(
 2553  
                         @WebParam(name = "cluId") String cluId,
 2554  
                         @WebParam(name = "cluSetId") String cluSetId, @WebParam(name = "context") ContextInfo context)
 2555  
                         throws DoesNotExistException, InvalidParameterException,
 2556  
                         MissingParameterException, OperationFailedException,
 2557  
                         PermissionDeniedException, UnsupportedActionException;
 2558  
 
 2559  
 }