Coverage Report - org.kuali.student.enrollment.courseofferingset.service.CourseOfferingSetService
 
Classes in this File Line Coverage Branch Coverage Complexity
CourseOfferingSetService
N/A
N/A
1
 
 1  
 /**
 2  
  * Copyright 2010 The Kuali Foundation
 3  
  *
 4  
  * Licensed under the the Educational Community License, Version 1.0
 5  
  * (the "License"); you may not use this file except in compliance
 6  
  * with the License.  You may obtain a copy of the License at
 7  
  *
 8  
  * http://www.opensource.org/licenses/ecl1.php
 9  
  *
 10  
  * Unless required by applicable law or agreed to in writing, software
 11  
  * distributed under the License is distributed on an "AS IS" BASIS,
 12  
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 13  
  * See the License for the specific language governing permissions and
 14  
  * limitations under the License.
 15  
  */
 16  
 package org.kuali.student.enrollment.courseofferingset.service;
 17  
 
 18  
 import org.kuali.student.r2.common.dto.ContextInfo;
 19  
 import org.kuali.student.r2.common.dto.StatusInfo;
 20  
 import org.kuali.student.r2.common.dto.ValidationResultInfo;
 21  
 
 22  
 import org.kuali.student.r2.common.exceptions.DataValidationErrorException;
 23  
 import org.kuali.student.r2.common.exceptions.DoesNotExistException;
 24  
 import org.kuali.student.r2.common.exceptions.InvalidParameterException;
 25  
 import org.kuali.student.r2.common.exceptions.MissingParameterException;
 26  
 import org.kuali.student.r2.common.exceptions.OperationFailedException;
 27  
 import org.kuali.student.r2.common.exceptions.PermissionDeniedException;
 28  
 import org.kuali.student.r2.common.exceptions.ReadOnlyException;
 29  
 import org.kuali.student.r2.common.exceptions.VersionMismatchException;
 30  
 
 31  
 
 32  
 import javax.jws.WebParam;
 33  
 import javax.jws.WebService;
 34  
 import javax.jws.soap.SOAPBinding;
 35  
 import java.util.List;
 36  
 import org.kuali.student.enrollment.courseofferingset.dto.SocInfo;
 37  
 import org.kuali.student.enrollment.courseofferingset.dto.SocRolloverResultItemInfo;
 38  
 import org.kuali.student.enrollment.courseofferingset.dto.SocRolloverResultInfo;
 39  
 import org.kuali.student.r2.common.exceptions.DependentObjectsExistException;
 40  
 import org.kuali.student.r2.common.util.constants.CourseOfferingSetServiceConstants;
 41  
 
 42  
 /**
 43  
  * Course Offering Set Service allows the user to create Sets of 
 44  
  * Offered Courses or SOCs.  These sets are all dynamic.
 45  
  * 
 46  
  * By default there is one main Soc per term that includes all the courses 
 47  
  * in that term.
 48  
  * 
 49  
  * @version 1.0
 50  
  *
 51  
  * @author nwright
 52  
  */
 53  
 @WebService(name = "CourseOfferingSetService", serviceName = "CourseOfferingSetService", portName = "CourseOfferingSetService", targetNamespace = CourseOfferingSetServiceConstants.NAMESPACE)
 54  
 @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
 55  
 public interface CourseOfferingSetService {
 56  
 
 57  
     /**
 58  
      * Retrieve information about a Soc
 59  
      *
 60  
      * @param socId Unique Id of the Soc
 61  
      * @param context          Context information containing the principalId and locale
 62  
      *                         information about the caller of service operation
 63  
      * @throws DoesNotExistException     socId not found
 64  
      * @throws InvalidParameterException invalid parameter
 65  
      * @throws MissingParameterException missing parameter
 66  
      * @throws OperationFailedException  unable to complete request
 67  
      * @throws PermissionDeniedException authorization failure
 68  
      */
 69  
     public SocInfo getSoc(@WebParam(name = "socId") String socId,
 70  
             @WebParam(name = "context") ContextInfo context)
 71  
             throws DoesNotExistException, InvalidParameterException,
 72  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 73  
 
 74  
     /**
 75  
      * Retrieves a list of course offerings by id list.
 76  
      *
 77  
      * @param socIds List of unique Ids of Soc
 78  
      * @param context           Context information containing the principalId and locale
 79  
      *                          information about the caller of service operation
 80  
      * @throws DoesNotExistException     socId in the list not found
 81  
      * @throws InvalidParameterException invalid socIds
 82  
      * @throws MissingParameterException missing socIds
 83  
      * @throws OperationFailedException  unable to complete request
 84  
      * @throws PermissionDeniedException authorization failure
 85  
      */
 86  
     public List<SocInfo> getSocsByIds(@WebParam(name = "socIds") List<String> socIds,
 87  
             @WebParam(name = "context") ContextInfo context)
 88  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 89  
             OperationFailedException, PermissionDeniedException;
 90  
 
 91  
     /**
 92  
      * Retrieve ids of the Soc for the term
 93  
      * 
 94  
      * This could return multiple Socs but should always return the default main 
 95  
      * SOC for that term.
 96  
      *
 97  
      * @param termId Unique Id of the term
 98  
      * @param context  Context information containing the principalId and locale
 99  
      *                 information about the caller of service operation
 100  
      * @throws DoesNotExistException     termId not found
 101  
      * @throws InvalidParameterException invalid parameter
 102  
      * @throws MissingParameterException missing parameter
 103  
      * @throws OperationFailedException  unable to complete request
 104  
      * @throws PermissionDeniedException authorization failure
 105  
      */
 106  
     public List<String> getSocIdsByTerm(@WebParam(name = "termId") String termId,
 107  
             @WebParam(name = "context") ContextInfo context)
 108  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 109  
             OperationFailedException, PermissionDeniedException;
 110  
 
 111  
     /**
 112  
      * Retrieve Soc Ids for a given term and subject area.
 113  
      * 
 114  
      * A Soc will have an official and "other" subject areas, this
 115  
      * operation will the course offering ids with either official or other subject area
 116  
      * that match.
 117  
      * 
 118  
      *
 119  
      * THIS IS A PLACEHOLDER for DEPARTMENTAL SOCS
 120  
      *
 121  
      *
 122  
      * @param termId      Unique key of the term in which the course is being offered
 123  
      * @param subjectArea subject area
 124  
      * @param context     Context information containing the principalId and locale
 125  
      *                    information about the caller of service operation
 126  
      * @return List of Soc Ids
 127  
      * @throws DoesNotExistException     termId or subject area not found
 128  
      * @throws InvalidParameterException invalid parameter
 129  
      * @throws MissingParameterException missing parameter
 130  
      * @throws OperationFailedException  unable to complete request
 131  
      * @throws PermissionDeniedException authorization failure
 132  
      */
 133  
     @Deprecated
 134  
     public List<String> getSocIdsByTermAndSubjectArea(@WebParam(name = "termId") String termId,
 135  
             @WebParam(name = "subjectArea") String subjectArea,
 136  
             @WebParam(name = "context") ContextInfo context)
 137  
             throws DoesNotExistException, InvalidParameterException,
 138  
             MissingParameterException, OperationFailedException,
 139  
             PermissionDeniedException;
 140  
 
 141  
     /**
 142  
      * Retrieve Soc Ids for a given term and unit content owner
 143  
      *
 144  
      * THIS IS A PLACEHOLDER for DEPARTMENTAL SOCS
 145  
      *
 146  
      * @param termId      Unique key of the term in which the course is being offered
 147  
      * @param unitsContentOwnerId Org Id of the Units content owner
 148  
      * @param context     Context information containing the principalId and locale
 149  
      *                    information about the caller of service operation
 150  
      * @return List of Soc Ids
 151  
      * @throws DoesNotExistException     termId or unitsContentOwnerid not found
 152  
      * @throws InvalidParameterException invalid parameter
 153  
      * @throws MissingParameterException missing parameter
 154  
      * @throws OperationFailedException  unable to complete request
 155  
      * @throws PermissionDeniedException authorization failure
 156  
      */
 157  
     @Deprecated
 158  
     public List<String> getSocIdsByTermAndUnitsContentOwner(@WebParam(name = "termId") String termId,
 159  
             @WebParam(name = "unitsContentOwnerId") String unitsContentOwnerId,
 160  
             @WebParam(name = "context") ContextInfo context)
 161  
             throws DoesNotExistException, InvalidParameterException,
 162  
             MissingParameterException, OperationFailedException,
 163  
             PermissionDeniedException;
 164  
 
 165  
     /**
 166  
      * Retrieve Soc Ids by type
 167  
      *
 168  
      * @param typeKey      Unique key type of Soc
 169  
      * @param context     Context information containing the principalId and locale
 170  
      *                    information about the caller of service operation
 171  
      * @return List of Soc Ids
 172  
      * @throws DoesNotExistException     typeKey not found
 173  
      * @throws InvalidParameterException invalid parameter
 174  
      * @throws MissingParameterException missing parameter
 175  
      * @throws OperationFailedException  unable to complete request
 176  
      * @throws PermissionDeniedException authorization failure
 177  
      */
 178  
     public List<String> getSocIdsByType(@WebParam(name = "typeKey") String typeKey,
 179  
             @WebParam(name = "context") ContextInfo context)
 180  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 181  
             OperationFailedException, PermissionDeniedException;
 182  
 
 183  
     /**
 184  
      * Creates a new Soc for a term
 185  
      * 
 186  
      * Fields in course offering will be initialized with data from the canonical.
 187  
      *
 188  
      * @param courseId     Canonical course Id of soc Id that the
 189  
      *                     ActivityOffering will belong to
 190  
      * @param termId       Unique key of the term in which the course is being offered
 191  
      *                     course offering
 192  
      * @param context      Context information containing the principalId and locale
 193  
      *                     information about the caller of service operation
 194  
      * @return newly created SocInfo
 195  
      * @throws DoesNotExistException        termId or socTypeKey not found
 196  
      * @throws DataValidationErrorException One or more values invalid for this operation
 197  
      * @throws InvalidParameterException    One or more parameters invalid
 198  
      * @throws MissingParameterException    One or more parameters missing
 199  
      * @throws OperationFailedException     unable to complete request
 200  
      * @throws PermissionDeniedException    authorization failure
 201  
      */
 202  
     public SocInfo createSoc(@WebParam(name = "termId") String termId,
 203  
             @WebParam(name = "socTypeKey") String socTypeKey,
 204  
             @WebParam(name = "socInfo") SocInfo socInfo,
 205  
             @WebParam(name = "context") ContextInfo context)
 206  
             throws DoesNotExistException, DataValidationErrorException, InvalidParameterException,
 207  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException;
 208  
 
 209  
     /**
 210  
      * Updates an existing Soc.
 211  
      *
 212  
      * @param socId   Id of Soc to be updated
 213  
      * @param socInfo Details of updates to the Soc
 214  
      * @param context            Context information containing the principalId and locale
 215  
      *                           information about the caller of service operation
 216  
      * @return updated Soc
 217  
      * @throws DataValidationErrorException One or more values invalid for this operation
 218  
      * @throws DoesNotExistException      the Soc does not exist
 219  
      * @throws InvalidParameterException    One or more parameters invalid
 220  
      * @throws MissingParameterException    One or more parameters missing
 221  
      * @throws OperationFailedException     unable to complete request
 222  
      * @throws PermissionDeniedException    authorization failure
 223  
      * @throws VersionMismatchException     The action was attempted on an out of date version.
 224  
      */
 225  
     public SocInfo updateSoc(@WebParam(name = "socId") String socId,
 226  
             @WebParam(name = "socInfo") SocInfo socInfo,
 227  
             @WebParam(name = "context") ContextInfo context)
 228  
             throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 229  
             MissingParameterException, OperationFailedException, PermissionDeniedException,
 230  
             ReadOnlyException, VersionMismatchException;
 231  
 
 232  
     /**
 233  
      * Deletes an existing Soc.
 234  
      * 
 235  
      * Deleting the Soc does not automatically delete the course offerings in a soc
 236  
      *
 237  
      * @param socId the Id of the ActivityOffering to be deleted
 238  
      * @param context          Context information containing the principalId and locale
 239  
      *                         information about the caller of service operation
 240  
      * @return status of the operation (success, failed)
 241  
      * @throws DoesNotExistException     the soc does not exist
 242  
      * @throws DependentObjectsExistException if course offerings exist and the
 243  
      *              implementation has the business rule that a course offering must have a Soc
 244  
      * @throws InvalidParameterException One or more parameters invalid
 245  
      * @throws MissingParameterException One or more parameters missing
 246  
      * @throws OperationFailedException  unable to complete request
 247  
      * @throws PermissionDeniedException authorization failure
 248  
      */
 249  
     public StatusInfo deleteSoc(@WebParam(name = "socId") String socId,
 250  
             @WebParam(name = "context") ContextInfo context)
 251  
             throws DependentObjectsExistException,
 252  
             DoesNotExistException, InvalidParameterException,
 253  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 254  
 
 255  
     /**
 256  
      * Validates a Soc. Depending on the value of validationType,
 257  
      * this validation could be limited to tests on just the current object and
 258  
      * its directly contained sub-objects or expanded to perform all tests
 259  
      * related to this object. If an identifier is present for the academic
 260  
      * calendar and a record is found for that identifier, the validation checks
 261  
      * if the academic calendar can be shifted to the new values. If a record
 262  
      * cannot be found for the identifier, it is assumed that the record does
 263  
      * not exist and as such, the checks performed will be much shallower,
 264  
      * typically mimicking those performed by setting the validationType to the
 265  
      * current object. This is a slightly different pattern from the standard
 266  
      * validation as the caller provides the identifier in the create statement
 267  
      * instead of the server assigning an identifier.
 268  
      *
 269  
      * @param validationType     Identifier of the extent of validation
 270  
      * @param socInfo the soc information to be tested.
 271  
      * @param context            Context information containing the principalId and locale
 272  
      *                           information about the caller of service operation
 273  
      * @return the results from performing the validation
 274  
      * @throws DoesNotExistException     validationTypeKey not found
 275  
      * @throws InvalidParameterException invalid validationTypeKey, socInfo
 276  
      * @throws MissingParameterException missing validationTypeKey, socInfo
 277  
      * @throws OperationFailedException  unable to complete request
 278  
      */
 279  
     public List<ValidationResultInfo> validateSoc(@WebParam(name = "validationType") String validationType,
 280  
             @WebParam(name = "socInfo") SocInfo socInfo,
 281  
             @WebParam(name = "context") ContextInfo context)
 282  
             throws DoesNotExistException, InvalidParameterException,
 283  
             MissingParameterException, OperationFailedException;
 284  
 
 285  
     /**
 286  
      * Retrieve Soc Ids that contain the specified course offering
 287  
      *
 288  
      * @param courseOfferingId Unique Id of the course offering
 289  
      * @param context  Context information containing the principalId and locale
 290  
      *                 information about the caller of service operation
 291  
      * @throws DoesNotExistException     courseOfferingId not found
 292  
      * @throws InvalidParameterException invalid parameter
 293  
      * @throws MissingParameterException missing parameter
 294  
      * @throws OperationFailedException  unable to complete request
 295  
      * @throws PermissionDeniedException authorization failure
 296  
      */
 297  
     public List<String> getSocIdsByCourseOffering(@WebParam(name = "courseOfferingId") String courseOfferingId,
 298  
             @WebParam(name = "context") ContextInfo context)
 299  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 300  
             OperationFailedException, PermissionDeniedException;
 301  
 
 302  
     /**
 303  
      * Retrieve course offering ids associated with the soc
 304  
      * 
 305  
      * @return list of course offering ids
 306  
      * @param socId Unique Id of the soc
 307  
      * @param context  Context information containing the principalId and locale
 308  
      *                 information about the caller of service operation
 309  
      * @throws DoesNotExistException     courseId or termId not found
 310  
      * @throws InvalidParameterException invalid courseId or termId
 311  
      * @throws MissingParameterException missing courseId or termId
 312  
      * @throws OperationFailedException  unable to complete request
 313  
      * @throws PermissionDeniedException authorization failure
 314  
      */
 315  
     public List<String> getCourseOfferingIdsBySoc(@WebParam(name = "socId") String socId,
 316  
             @WebParam(name = "context") ContextInfo context)
 317  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 318  
             OperationFailedException, PermissionDeniedException;
 319  
 
 320  
     /**
 321  
      * Delete all the course offerings associated with the Soc
 322  
      * 
 323  
      * @return count of the course offerings deleted
 324  
      * @param socId Unique Id of the soc
 325  
      * @param context  Context information containing the principalId and locale
 326  
      *                 information about the caller of service operation
 327  
      * @throws DoesNotExistException    socId not found
 328  
      * @throws InvalidParameterException invalid parameter
 329  
      * @throws MissingParameterException missing parameter
 330  
      * @throws OperationFailedException  unable to complete request
 331  
      * @throws PermissionDeniedException authorization failure
 332  
      */
 333  
     public Integer deleteCourseOfferingsBySoc(@WebParam(name = "socId") String socId,
 334  
             @WebParam(name = "context") ContextInfo context)
 335  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 336  
             OperationFailedException, PermissionDeniedException;
 337  
 
 338  
     /**
 339  
      * Checks if the specified course offering is or is not in the specified soc.
 340  
      * 
 341  
      * @return true if the course offering is in the soc else false.
 342  
      * @param socId Unique Id of the soc
 343  
      * @param courseOfferingId Unique id of the course offering
 344  
      * @param context  Context information containing the principalId and locale
 345  
      *                 information about the caller of service operation
 346  
      * @throws DoesNotExistException     either id is not found
 347  
      * @throws InvalidParameterException invalid parameter
 348  
      * @throws MissingParameterException missing parameter
 349  
      * @throws OperationFailedException  unable to complete request
 350  
      * @throws PermissionDeniedException authorization failure
 351  
      */
 352  
     public Boolean isCourseOfferingInSoc(@WebParam(name = "socId") String socId,
 353  
             @WebParam(name = "courseOfferingId") String courseOfferingId,
 354  
             @WebParam(name = "context") ContextInfo context)
 355  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 356  
             OperationFailedException, PermissionDeniedException;
 357  
 
 358  
     /**
 359  
      * Retrieve published Course offering ids in this soc
 360  
      * 
 361  
      * THIS IS A PLACEHOLDER FOR M5 AND NEEDS TO BE REVIEWED
 362  
      * Not sure what it means to be "published"
 363  
      * 
 364  
      * @return list of Course offering ids
 365  
      * @param socId Unique Id of the soc
 366  
      * @param context  Context information containing the principalId and locale
 367  
      *                 information about the caller of service operation
 368  
      * @throws DoesNotExistException   socId not found
 369  
      * @throws InvalidParameterException invalid parameter
 370  
      * @throws MissingParameterException missing parameter
 371  
      * @throws OperationFailedException  unable to complete request
 372  
      * @throws PermissionDeniedException authorization failure
 373  
      */
 374  
     @Deprecated
 375  
     public List<String> getPublishedCourseOfferingIdsBySoc(@WebParam(name = "socId") String socId,
 376  
             @WebParam(name = "context") ContextInfo context)
 377  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 378  
             OperationFailedException, PermissionDeniedException;
 379  
 
 380  
     /**
 381  
      * Retrieve unpublished Course offering ids in this soc
 382  
      * 
 383  
      * THIS IS A PLACEHOLDER FOR M5 AND NEEDS TO BE REVIEWED
 384  
      * Not sure what it means to be "unpublished"
 385  
      * 
 386  
      * @return list of Activity offering ids
 387  
      * @param socId Unique Id of the soc
 388  
      * @param context  Context information containing the principalId and locale
 389  
      *                 information about the caller of service operation
 390  
      * @throws DoesNotExistException     socId not found
 391  
      * @throws InvalidParameterException invalid parameter
 392  
      * @throws MissingParameterException missing parameter
 393  
      * @throws OperationFailedException  unable to complete request
 394  
      * @throws PermissionDeniedException authorization failure
 395  
      */
 396  
     @Deprecated
 397  
     public List<String> getUnpublishedCourseOfferingIdsBySoc(@WebParam(name = "socId") String socId,
 398  
             @WebParam(name = "context") ContextInfo context)
 399  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 400  
             OperationFailedException, PermissionDeniedException;
 401  
 
 402  
     /**
 403  
      * Retrieve unpublished Activity offering ids associated with the course 
 404  
      * offerings in this soc
 405  
      * 
 406  
      * THIS IS A PLACEHOLDER FOR M5 AND NEEDS TO BE REVIEWED
 407  
      * Not sure what it means to be "unpublished"
 408  
      * 
 409  
      * @return list of Activity offering ids
 410  
      * @param socId Unique Id of the soc
 411  
      * @param context  Context information containing the principalId and locale
 412  
      *                 information about the caller of service operation
 413  
      * @throws DoesNotExistException     socId not found
 414  
      * @throws InvalidParameterException invalid parameter
 415  
      * @throws MissingParameterException missing parameter
 416  
      * @throws OperationFailedException  unable to complete request
 417  
      * @throws PermissionDeniedException authorization failure
 418  
      */
 419  
     @Deprecated
 420  
     public List<String> getUnpublishedActivityOfferingIdsBySoc(@WebParam(name = "socId") String socId,
 421  
             @WebParam(name = "context") ContextInfo context)
 422  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 423  
             OperationFailedException, PermissionDeniedException;
 424  
 
 425  
     /**
 426  
      * Retrieve unscheduled Activity offering ids associated with the course 
 427  
      * offerings in this soc
 428  
      * 
 429  
      * THIS IS A PLACEHOLDER FOR M5 AND NEEDS TO BE REVIEWED
 430  
      * Not sure what it means to be "unscheduled"
 431  
      * 
 432  
      * @return list of Activity offering ids
 433  
      * @param socId Unique Id of the soc
 434  
      * @param context  Context information containing the principalId and locale
 435  
      *                 information about the caller of service operation
 436  
      * @throws DoesNotExistException     socId not found
 437  
      * @throws InvalidParameterException invalid parameter
 438  
      * @throws MissingParameterException missing parameter
 439  
      * @throws OperationFailedException  unable to complete request
 440  
      * @throws PermissionDeniedException authorization failure
 441  
      */
 442  
     @Deprecated
 443  
     public List<String> getUnscheduledActivityOfferingIdsBySoc(@WebParam(name = "socId") String socId,
 444  
             @WebParam(name = "context") ContextInfo context)
 445  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 446  
             OperationFailedException, PermissionDeniedException;
 447  
 
 448  
     /**
 449  
      * Get course offering ids associated with the soc that have an unscheduled final exam
 450  
      * 
 451  
      * THIS IS A PLACEHOLDER FOR M5 AND NEEDS TO BE REVIEWED
 452  
      * Not sure what it means to be "unscheduled final exam"
 453  
      * 
 454  
      * @return list of course offering ids
 455  
      * @param socId Unique Id of the soc
 456  
      * @param context  Context information containing the principalId and locale
 457  
      *                 information about the caller of service operation
 458  
      * @throws DoesNotExistException     socId not found
 459  
      * @throws InvalidParameterException invalid parameter
 460  
      * @throws MissingParameterException missing parameter
 461  
      * @throws OperationFailedException  unable to complete request
 462  
      * @throws PermissionDeniedException authorization failure
 463  
      */
 464  
     @Deprecated
 465  
     public List<String> getCourseOfferingIdsWithUnscheduledFinalExamsBySoc(@WebParam(name = "socId") String socId,
 466  
             @WebParam(name = "context") ContextInfo context)
 467  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 468  
             OperationFailedException, PermissionDeniedException;
 469  
 
 470  
     /**
 471  
      * Requests that the course offerings in this Soc be submitted to the scheduler.
 472  
      * 
 473  
      * THIS IS A PLACEHOLDER FOR M5 DEVELOPMENT
 474  
      * NOTE: we don't know yet with this should return and how to do ASYNC calls.
 475  
      *
 476  
      * @param socId Unique Id of the soc
 477  
      * @param context  Context information containing the principalId and locale
 478  
      *                 information about the caller of service operation
 479  
      * @throws DoesNotExistException     socId not found
 480  
      * @throws InvalidParameterException invalid parameter
 481  
      * @throws MissingParameterException missing parameter
 482  
      * @throws OperationFailedException  unable to complete request
 483  
      * @throws PermissionDeniedException authorization failure
 484  
      */
 485  
     @Deprecated
 486  
     public StatusInfo scheduleSoc(@WebParam(name = "socId") String socId,
 487  
             @WebParam(name = "context") ContextInfo context)
 488  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 489  
             OperationFailedException, PermissionDeniedException;
 490  
 
 491  
     /**
 492  
      * Creates a new SOC for the target term that corresponds to the 
 493  
      * source soc and then rolls over all the course offerings in source Soc to
 494  
      * the new soc using the supplied options.
 495  
      *
 496  
      * @param sourceSocId Unique Id of the source Soc
 497  
      * @param targetSocId Unique Id of the source Soc
 498  
      * @param optionKeys keys identifying optional processing to occur
 499  
      * @return newly created Soc 
 500  
      * @param context  Context information containing the principalId and locale
 501  
      *                 information about the caller of service operation
 502  
      * @throws DoesNotExistException     sourceSocId or targetTermId not found
 503  
      * @throws InvalidParameterException invalid parameter
 504  
      * @throws MissingParameterException missing parameter
 505  
      * @throws OperationFailedException  unable to complete request
 506  
      * @throws PermissionDeniedException authorization failure
 507  
      */
 508  
     public SocInfo rolloverSoc(@WebParam(name = "sourceSocId") String sourceSocId,
 509  
             @WebParam(name = "targetTermId") String targetTermId,
 510  
             @WebParam(name = "optionKeys") List<String> optionKeys,
 511  
             @WebParam(name = "context") ContextInfo context)
 512  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 513  
             OperationFailedException, PermissionDeniedException;
 514  
 
 515  
     /**
 516  
      * Retrieves the result of a rollover.
 517  
      *
 518  
      * @param rolloverResultId unique Id of the rollover result
 519  
      * @param context           Context information containing the principalId and locale
 520  
      *                          information about the caller of service operation
 521  
      * @throws DoesNotExistException     rolloverResultId in the list not found
 522  
      * @throws InvalidParameterException invalid parameter
 523  
      * @throws MissingParameterException missing parameter
 524  
      * @throws OperationFailedException  unable to complete request
 525  
      * @throws PermissionDeniedException authorization failure
 526  
      */
 527  
     public SocRolloverResultInfo getSocRolloverResult(@WebParam(name = "rolloverResultId") String rolloverResultId,
 528  
             @WebParam(name = "context") ContextInfo context)
 529  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 530  
             OperationFailedException, PermissionDeniedException;
 531  
 
 532  
     /**
 533  
      * Retrieves a list of rollover results by id list.
 534  
      *
 535  
      * @param rolloverResultIds List of unique Ids of the rollover result to be fetched
 536  
      * @param context           Context information containing the principalId and locale
 537  
      *                          information about the caller of service operation
 538  
      * @throws DoesNotExistException     rolloverResultId in the list not found
 539  
      * @throws InvalidParameterException invalid parameter
 540  
      * @throws MissingParameterException missing parameter
 541  
      * @throws OperationFailedException  unable to complete request
 542  
      * @throws PermissionDeniedException authorization failure
 543  
      */
 544  
     public List<SocRolloverResultInfo> getSocRolloverResultsByIds(@WebParam(name = "rolloverResultIds") List<String> rolloverResultIds,
 545  
             @WebParam(name = "context") ContextInfo context)
 546  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 547  
             OperationFailedException, PermissionDeniedException;
 548  
 
 549  
     /**
 550  
      * Retrieves a list of rollover results items by id list.
 551  
      *
 552  
      * @param rolloverResultItemIds List of unique Ids of the rollover result items to be fetched
 553  
      * @param context           Context information containing the principalId and locale
 554  
      *                          information about the caller of service operation
 555  
      * @throws DoesNotExistException     rolloverResultId in the list not found
 556  
      * @throws InvalidParameterException invalid parameter
 557  
      * @throws MissingParameterException missing parameter
 558  
      * @throws OperationFailedException  unable to complete request
 559  
      * @throws PermissionDeniedException authorization failure
 560  
      */
 561  
     public List<SocRolloverResultItemInfo> getSocRolloverResultItemsByIds(@WebParam(name = "rolloverResultItemIds") List<String> rolloverResultItemIds,
 562  
             @WebParam(name = "context") ContextInfo context)
 563  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 564  
             OperationFailedException, PermissionDeniedException;
 565  
 
 566  
     /**
 567  
      * Retrieves a list of rollover result items by result id
 568  
      *
 569  
      * @param socRolloverResultId Unique Ids of the rollover result for which the items are to be fetched
 570  
      * @param context           Context information containing the principalId and locale
 571  
      *                          information about the caller of service operation
 572  
      * @throws DoesNotExistException     rolloverResultId in the list not found
 573  
      * @throws InvalidParameterException invalid parameter
 574  
      * @throws MissingParameterException missing parameter
 575  
      * @throws OperationFailedException  unable to complete request
 576  
      * @throws PermissionDeniedException authorization failure
 577  
      */
 578  
     public List<SocRolloverResultItemInfo> getSocRolloverResultItemsByResultId(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 579  
             @WebParam(name = "context") ContextInfo context)
 580  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 581  
             OperationFailedException, PermissionDeniedException;
 582  
 
 583  
     /**
 584  
      * Retrieves a list of rollover result items by result id and source course offering id
 585  
      *
 586  
      * @param socRolloverResultId Unique Id of the rollover result for which the items are to be fetched
 587  
      * @param sourceCourseOfferingId Unique Id of source course offering id
 588  
      * @param context           Context information containing the principalId and locale
 589  
      *                          information about the caller of service operation
 590  
      * @throws DoesNotExistException     rolloverResultId in the list not found
 591  
      * @throws InvalidParameterException invalid parameter
 592  
      * @throws MissingParameterException missing parameter
 593  
      * @throws OperationFailedException  unable to complete request
 594  
      * @throws PermissionDeniedException authorization failure
 595  
      */
 596  
     public List<SocRolloverResultItemInfo> getSocRolloverResultItemsByResultIdAndSourceCourseOfferingId(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 597  
             @WebParam(name = "sourceCourseOfferingId") String sourceCourseOfferingId,
 598  
             @WebParam(name = "context") ContextInfo context)
 599  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 600  
             OperationFailedException, PermissionDeniedException;
 601  
 
 602  
     /**
 603  
      * Retrieves a list of rollover result items by result id and target course offering id
 604  
      *
 605  
      * @param socRolloverResultId Unique Id of the rollover result for which the items are to be fetched
 606  
      * @param sourceCourseOfferingId Unique Id of target course offering id
 607  
      * @param context           Context information containing the principalId and locale
 608  
      *                          information about the caller of service operation
 609  
      * @throws DoesNotExistException     rolloverResultId in the list not found
 610  
      * @throws InvalidParameterException invalid parameter
 611  
      * @throws MissingParameterException missing parameter
 612  
      * @throws OperationFailedException  unable to complete request
 613  
      * @throws PermissionDeniedException authorization failure
 614  
      */
 615  
     public List<SocRolloverResultItemInfo> getSocRolloverResultItemsByResultIdAndTargetCourseOfferingId(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 616  
             @WebParam(name = "targetCourseOfferingId") String targetCourseOfferingId,
 617  
             @WebParam(name = "context") ContextInfo context)
 618  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 619  
             OperationFailedException, PermissionDeniedException;
 620  
 
 621  
     /**
 622  
      * Retrieves the rollover results associated with the specified target Soc id
 623  
      *
 624  
      * @param targetSocId     target Soc Id
 625  
      * @param context     Context information containing the principalId and locale
 626  
      *                    information about the caller of service operation
 627  
      * @return List of Rollover Result Ids
 628  
      * @throws DoesNotExistException     courseId or termId not found
 629  
      * @throws InvalidParameterException invalid courseId or termId
 630  
      * @throws MissingParameterException missing courseId or termId
 631  
      * @throws OperationFailedException  unable to complete request
 632  
      * @throws PermissionDeniedException authorization failure
 633  
      */
 634  
     public List<String> getSocRolloverResultIdsByTargetSoc(@WebParam(name = "targetSocId") String targetSocId,
 635  
             @WebParam(name = "context") ContextInfo context)
 636  
             throws DoesNotExistException, InvalidParameterException,
 637  
             MissingParameterException, OperationFailedException,
 638  
             PermissionDeniedException;
 639  
 
 640  
     /**
 641  
      * Retrieves the rollover results associated with the specified source Soc id
 642  
      *
 643  
      * @param sourceSocId      Unique id of the source Soc
 644  
      * @param context     Context information containing the principalId and locale
 645  
      *                    information about the caller of service operation
 646  
      * @return List of Rollover Result Ids
 647  
      * @throws DoesNotExistException     courseId or termId not found
 648  
      * @throws InvalidParameterException invalid courseId or termId
 649  
      * @throws MissingParameterException missing courseId or termId
 650  
      * @throws OperationFailedException  unable to complete request
 651  
      * @throws PermissionDeniedException authorization failure
 652  
      */
 653  
     public List<String> getSocRolloverResultIdsBySourceSoc(@WebParam(name = "targetSocId") String sourceSocId,
 654  
             @WebParam(name = "context") ContextInfo context)
 655  
             throws DoesNotExistException, InvalidParameterException,
 656  
             MissingParameterException, OperationFailedException,
 657  
             PermissionDeniedException;
 658  
 
 659  
     /**
 660  
      * Requests that the rollover identified by the result be reversed.
 661  
      * 
 662  
      * This attempts to reverse or clear out the actions applied by the specified rollover result.
 663  
      * Depending on whether or not the resulting course offerings have been updated
 664  
      * and the optional processing flags a full reversal is not guaranteed.
 665  
      *
 666  
      * @param rolloverResultId Unique Id of the rollover result
 667  
      * @param optionKeys keys identifying optional processing to happen when clearing the result
 668  
      * @return a Rollover Result indicating what reversal actions were successful or not
 669  
      * @param context  Context information containing the principalId and locale
 670  
      *                 information about the caller of service operation
 671  
      * @throws DoesNotExistException     courseId or termId not found
 672  
      * @throws InvalidParameterException invalid courseId or termId
 673  
      * @throws MissingParameterException missing courseId or termId
 674  
      * @throws OperationFailedException  unable to complete request
 675  
      * @throws PermissionDeniedException authorization failure
 676  
      */
 677  
     public SocRolloverResultInfo reverseRollover(@WebParam(name = "rolloverResultId") String rolloverResultId,
 678  
             @WebParam(name = "optionKeys") List<String> optionKeys,
 679  
             @WebParam(name = "context") ContextInfo context)
 680  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 681  
             OperationFailedException, PermissionDeniedException;
 682  
 
 683  
     /**
 684  
      * Creates a new SocRolloverResult
 685  
      * 
 686  
      * @param socRolloverResultTypeKey     soc rollover result type key
 687  
      * @param socRolloverResultInfo    object to be created
 688  
      * @param context      Context information containing the principalId and locale
 689  
      *                     information about the caller of service operation
 690  
      * @return newly created SocRolloverResultInfo
 691  
      * @throws DoesNotExistException        termId or socRolloverResultTypeKey not found
 692  
      * @throws DataValidationErrorException One or more values invalid for this operation
 693  
      * @throws InvalidParameterException    One or more parameters invalid
 694  
      * @throws MissingParameterException    One or more parameters missing
 695  
      * @throws OperationFailedException     unable to complete request
 696  
      * @throws PermissionDeniedException    authorization failure
 697  
      */
 698  
     public SocRolloverResultInfo createSocRolloverResult(@WebParam(name = "socRolloverResultTypeKey") String socRolloverResultTypeKey,
 699  
             @WebParam(name = "socRolloverResultInfo") SocRolloverResultInfo socRolloverResultInfo,
 700  
             @WebParam(name = "context") ContextInfo context)
 701  
             throws DoesNotExistException, DataValidationErrorException, InvalidParameterException,
 702  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException;
 703  
 
 704  
     /**
 705  
      * Updates an existing SocRolloverResult.
 706  
      *
 707  
      * @param socRolloverResultId   Id of SocRolloverResult to be updated
 708  
      * @param socRolloverResultInfo Details of updates to the SocRolloverResult
 709  
      * @param context            Context information containing the principalId and locale
 710  
      *                           information about the caller of service operation
 711  
      * @return updated SocRolloverResult
 712  
      * @throws DataValidationErrorException One or more values invalid for this operation
 713  
      * @throws DoesNotExistException      the SocRolloverResult does not exist
 714  
      * @throws InvalidParameterException    One or more parameters invalid
 715  
      * @throws MissingParameterException    One or more parameters missing
 716  
      * @throws OperationFailedException     unable to complete request
 717  
      * @throws PermissionDeniedException    authorization failure
 718  
      * @throws VersionMismatchException     The action was attempted on an out of date version.
 719  
      */
 720  
     public SocRolloverResultInfo updateSocRolloverResult(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 721  
             @WebParam(name = "socRolloverResultInfo") SocRolloverResultInfo socRolloverResultInfo,
 722  
             @WebParam(name = "context") ContextInfo context)
 723  
             throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 724  
             MissingParameterException, OperationFailedException, PermissionDeniedException,
 725  
             ReadOnlyException, VersionMismatchException;
 726  
 
 727  
     /**
 728  
      * Update progress information
 729  
      *
 730  
      * @param socRolloverResultId   Id of SocRolloverResult to be updated
 731  
      * @param itemsProcessed new count of the number of items processed
 732  
      * @param context            Context information containing the principalId and locale
 733  
      *                           information about the caller of service operation
 734  
      * @return StatusInfo indicates the update worked
 735  
      * @throws DataValidationErrorException One or more values invalid for this operation
 736  
      * @throws DoesNotExistException      the SocRolloverResult does not exist
 737  
      * @throws InvalidParameterException    One or more parameters invalid
 738  
      * @throws MissingParameterException    One or more parameters missing
 739  
      * @throws OperationFailedException     unable to complete request
 740  
      * @throws PermissionDeniedException    authorization failure
 741  
      * @throws VersionMismatchException     The action was attempted on an out of date version.
 742  
      */
 743  
     public SocRolloverResultInfo updateSocRolloverProgress(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 744  
             @WebParam(name = "itemsProcessed") Integer itemsProcessed,
 745  
             @WebParam(name = "context") ContextInfo context)
 746  
             throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 747  
             MissingParameterException, OperationFailedException, PermissionDeniedException,
 748  
             ReadOnlyException, VersionMismatchException;
 749  
 
 750  
     /**
 751  
      * Deletes an existing SocRolloverResult. 
 752  
      *
 753  
      * @param socRolloverResultId the Id of the ActivityOffering to be deleted
 754  
      * @param context          Context information containing the principalId and locale
 755  
      *                         information about the caller of service operation
 756  
      * @return status of the operation (success, failed)
 757  
      * @throws DoesNotExistException     the SeatPoolDefinition does not exist
 758  
      * @throws InvalidParameterException One or more parameters invalid
 759  
      * @throws MissingParameterException One or more parameters missing
 760  
      * @throws OperationFailedException  unable to complete request
 761  
      * @throws PermissionDeniedException authorization failure
 762  
      */
 763  
     public StatusInfo deleteSocRolloverResult(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 764  
             @WebParam(name = "context") ContextInfo context)
 765  
             throws DoesNotExistException, DependentObjectsExistException, InvalidParameterException,
 766  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 767  
 
 768  
     /**
 769  
      * Validates a SocRolloverResult. Depending on the value of validationType,
 770  
      * this validation could be limited to tests on just the current object and
 771  
      * its directly contained sub-objects or expanded to perform all tests
 772  
      * related to this object. If an identifier is present for the academic
 773  
      * calendar and a record is found for that identifier, the validation checks
 774  
      * if the academic calendar can be shifted to the new values. If a record
 775  
      * cannot be found for the identifier, it is assumed that the record does
 776  
      * not exist and as such, the checks performed will be much shallower,
 777  
      * typically mimicking those performed by setting the validationType to the
 778  
      * current object. This is a slightly different pattern from the standard
 779  
      * validation as the caller provides the identifier in the create statement
 780  
      * instead of the server assigning an identifier.
 781  
      *
 782  
      * @param validationType     Identifier of the extent of validation
 783  
      * @param socRolloverResultInfo the socRolloverResult information to be tested.
 784  
      * @param context            Context information containing the principalId and locale
 785  
      *                           information about the caller of service operation
 786  
      * @return the results from performing the validation
 787  
      * @throws DoesNotExistException     validationTypeKey not found
 788  
      * @throws InvalidParameterException invalid validationTypeKey, socRolloverResultInfo
 789  
      * @throws MissingParameterException missing validationTypeKey, socRolloverResultInfo
 790  
      * @throws OperationFailedException  unable to complete request
 791  
      */
 792  
     public List<ValidationResultInfo> validateSocRolloverResult(@WebParam(name = "validationType") String validationType,
 793  
             @WebParam(name = "socRolloverResultInfo") SocRolloverResultInfo socRolloverResultInfo,
 794  
             @WebParam(name = "context") ContextInfo context)
 795  
             throws DoesNotExistException, InvalidParameterException,
 796  
             MissingParameterException, OperationFailedException;
 797  
 
 798  
     /**
 799  
      * Retrieve information about a SocRolloverResultItem
 800  
      *
 801  
      * @param socRolloverResultItemId Unique Id of the SocRolloverResultItem
 802  
      * @param context          Context information containing the principalId and locale
 803  
      *                         information about the caller of service operation
 804  
      * @throws DoesNotExistException     socRolloverResultItemId not found
 805  
      * @throws InvalidParameterException invalid parameter
 806  
      * @throws MissingParameterException missing parameter
 807  
      * @throws OperationFailedException  unable to complete request
 808  
      * @throws PermissionDeniedException authorization failure
 809  
      */
 810  
     public SocRolloverResultItemInfo getSocRolloverResultItem(@WebParam(name = "socRolloverResultItemId") String socRolloverResultItemId,
 811  
             @WebParam(name = "context") ContextInfo context)
 812  
             throws DoesNotExistException, InvalidParameterException,
 813  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 814  
 
 815  
     /**
 816  
      * Creates a new SocRolloverResultItem
 817  
      * 
 818  
      * @param socRolloverResultId     Id of the corresponding soc rollover result
 819  
      * @param socRolloverResultItemTypeKey     soc rollover result type key
 820  
      * @param socRolloverResultItemInfo    object to be created
 821  
      * @param context      Context information containing the principalId and locale
 822  
      *                     information about the caller of service operation
 823  
      * @return newly created SocRolloverResultItemInfo
 824  
      * @throws DoesNotExistException        termId or socRolloverResultItemTypeKey not found
 825  
      * @throws DataValidationErrorException One or more values invalid for this operation
 826  
      * @throws InvalidParameterException    One or more parameters invalid
 827  
      * @throws MissingParameterException    One or more parameters missing
 828  
      * @throws OperationFailedException     unable to complete request
 829  
      * @throws PermissionDeniedException    authorization failure
 830  
      */
 831  
     public SocRolloverResultItemInfo createSocRolloverResultItem(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 832  
             @WebParam(name = "socRolloverResultItemTypeKey") String socRolloverResultItemTypeKey,
 833  
             @WebParam(name = "socRolloverResultItemInfo") SocRolloverResultItemInfo socRolloverResultItemInfo,
 834  
             @WebParam(name = "context") ContextInfo context)
 835  
             throws DoesNotExistException, DataValidationErrorException, InvalidParameterException,
 836  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException;
 837  
 
 838  
     /**
 839  
      * Bulk create of  SocRolloverResultItems
 840  
      * 
 841  
      * All must be for the same result and type.
 842  
      * 
 843  
      * @param socRolloverResultId     Id of the corresponding soc rollover result
 844  
      * @param socRolloverResultItemTypeKey     soc rollover result type key
 845  
      * @param socRolloverResultItemInfos    objects to be created
 846  
      * @param context      Context information containing the principalId and locale
 847  
      *                     information about the caller of service operation
 848  
      * @return count of number of items created
 849  
      * @throws DoesNotExistException        termId or socRolloverResultItemTypeKey not found
 850  
      * @throws DataValidationErrorException One or more values invalid for this operation
 851  
      * @throws InvalidParameterException    One or more parameters invalid
 852  
      * @throws MissingParameterException    One or more parameters missing
 853  
      * @throws OperationFailedException     unable to complete request
 854  
      * @throws PermissionDeniedException    authorization failure
 855  
      */
 856  
     public Integer createSocRolloverResultItems(@WebParam(name = "socRolloverResultId") String socRolloverResultId,
 857  
             @WebParam(name = "socRolloverResultItemTypeKey") String socRolloverResultItemTypeKey,
 858  
             @WebParam(name = "socRolloverResultItemInfos") List<SocRolloverResultItemInfo> socRolloverResultItemInfos,
 859  
             @WebParam(name = "context") ContextInfo context)
 860  
             throws DoesNotExistException, DataValidationErrorException, InvalidParameterException,
 861  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException;
 862  
 
 863  
     /**
 864  
      * Updates an existing SocRolloverResultItem.
 865  
      *
 866  
      * @param socRolloverResultItemId   Id of SocRolloverResultItem to be updated
 867  
      * @param socRolloverResultItemInfo Details of updates to the SocRolloverResultItem
 868  
      * @param context            Context information containing the principalId and locale
 869  
      *                           information about the caller of service operation
 870  
      * @return updated SocRolloverResultItem
 871  
      * @throws DataValidationErrorException One or more values invalid for this operation
 872  
      * @throws DoesNotExistException      the SocRolloverResultItem does not exist
 873  
      * @throws InvalidParameterException    One or more parameters invalid
 874  
      * @throws MissingParameterException    One or more parameters missing
 875  
      * @throws OperationFailedException     unable to complete request
 876  
      * @throws PermissionDeniedException    authorization failure
 877  
      * @throws VersionMismatchException     The action was attempted on an out of date version.
 878  
      */
 879  
     public SocRolloverResultItemInfo updateSocRolloverResultItem(@WebParam(name = "socRolloverResultItemId") String socRolloverResultItemId,
 880  
             @WebParam(name = "socRolloverResultItemInfo") SocRolloverResultItemInfo socRolloverResultItemInfo,
 881  
             @WebParam(name = "context") ContextInfo context)
 882  
             throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 883  
             MissingParameterException, OperationFailedException, PermissionDeniedException,
 884  
             ReadOnlyException, VersionMismatchException;
 885  
 
 886  
     /**
 887  
      * Deletes an existing SocRolloverResultItem. 
 888  
      *
 889  
      * @param socRolloverResultItemId the Id of the ActivityOffering to be deleted
 890  
      * @param context          Context information containing the principalId and locale
 891  
      *                         information about the caller of service operation
 892  
      * @return status of the operation (success, failed)
 893  
      * @throws DoesNotExistException     the SeatPoolDefinition does not exist
 894  
      * @throws InvalidParameterException One or more parameters invalid
 895  
      * @throws MissingParameterException One or more parameters missing
 896  
      * @throws OperationFailedException  unable to complete request
 897  
      * @throws PermissionDeniedException authorization failure
 898  
      */
 899  
     public StatusInfo deleteSocRolloverResultItem(@WebParam(name = "socRolloverResultItemId") String socRolloverResultItemId,
 900  
             @WebParam(name = "context") ContextInfo context)
 901  
             throws DoesNotExistException, InvalidParameterException,
 902  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 903  
 
 904  
     /**
 905  
      * Validates a SocRolloverResultItem. Depending on the value of validationType,
 906  
      * this validation could be limited to tests on just the current object and
 907  
      * its directly contained sub-objects or expanded to perform all tests
 908  
      * related to this object. If an identifier is present for the academic
 909  
      * calendar and a record is found for that identifier, the validation checks
 910  
      * if the academic calendar can be shifted to the new values. If a record
 911  
      * cannot be found for the identifier, it is assumed that the record does
 912  
      * not exist and as such, the checks performed will be much shallower,
 913  
      * typically mimicking those performed by setting the validationType to the
 914  
      * current object. This is a slightly different pattern from the standard
 915  
      * validation as the caller provides the identifier in the create statement
 916  
      * instead of the server assigning an identifier.
 917  
      *
 918  
      * @param validationType     Identifier of the extent of validation
 919  
      * @param socRolloverResultItemInfo the socRolloverResultItem information to be tested.
 920  
      * @param context            Context information containing the principalId and locale
 921  
      *                           information about the caller of service operation
 922  
      * @return the results from performing the validation
 923  
      * @throws DoesNotExistException     validationTypeKey not found
 924  
      * @throws InvalidParameterException invalid validationTypeKey, socRolloverResultItemInfo
 925  
      * @throws MissingParameterException missing validationTypeKey, socRolloverResultItemInfo
 926  
      * @throws OperationFailedException  unable to complete request
 927  
      */
 928  
     public List<ValidationResultInfo> validateSocRolloverResultItem(@WebParam(name = "validationType") String validationType,
 929  
             @WebParam(name = "socRolloverResultItemInfo") SocRolloverResultItemInfo socRolloverResultItemInfo,
 930  
             @WebParam(name = "context") ContextInfo context)
 931  
             throws DoesNotExistException, InvalidParameterException,
 932  
             MissingParameterException, OperationFailedException;
 933  
 }