Coverage Report - org.kuali.student.enrollment.batchjobresults.service.BatchJobResultService
 
Classes in this File Line Coverage Branch Coverage Complexity
BatchJobResultService
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.batchjobresults.service;
 17  
 
 18  
 import java.util.Date;
 19  
 import org.kuali.student.r2.common.dto.ContextInfo;
 20  
 import org.kuali.student.r2.common.dto.StatusInfo;
 21  
 import org.kuali.student.r2.common.dto.ValidationResultInfo;
 22  
 
 23  
 import org.kuali.student.r2.common.exceptions.DataValidationErrorException;
 24  
 import org.kuali.student.r2.common.exceptions.DoesNotExistException;
 25  
 import org.kuali.student.r2.common.exceptions.InvalidParameterException;
 26  
 import org.kuali.student.r2.common.exceptions.MissingParameterException;
 27  
 import org.kuali.student.r2.common.exceptions.OperationFailedException;
 28  
 import org.kuali.student.r2.common.exceptions.PermissionDeniedException;
 29  
 import org.kuali.student.r2.common.exceptions.ReadOnlyException;
 30  
 import org.kuali.student.r2.common.exceptions.VersionMismatchException;
 31  
 
 32  
 
 33  
 import javax.jws.WebParam;
 34  
 import javax.jws.WebService;
 35  
 import javax.jws.soap.SOAPBinding;
 36  
 import java.util.List;
 37  
 import org.kuali.student.enrollment.batchjobresults.dto.BatchJobResultInfo;
 38  
 import org.kuali.student.enrollment.batchjobresults.dto.BatchJobResultItemInfo;
 39  
 import org.kuali.student.r2.common.dto.AttributeInfo;
 40  
 import org.kuali.student.r2.common.util.constants.BatchJobResultServiceConstants;
 41  
 
 42  
 /**
 43  
  * The batch job results service provides a simple mechanism to 
 44  
  * store and progress and final results of of a long running batch job.
 45  
  * 
 46  
  * @version 1.0
 47  
  *
 48  
  * @author nwright
 49  
  */
 50  
 @WebService(name = "BatchJobResultService", serviceName = "BatchJobResultService", portName = "BatchJobResultService", targetNamespace = BatchJobResultServiceConstants.NAMESPACE)
 51  
 @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
 52  
 public interface BatchJobResultService {
 53  
 
 54  
     /**
 55  
      * Retrieve information about a BatchJobResult
 56  
      *
 57  
      * @param batchJobResultId Unique Id of the BatchJobResult
 58  
      * @param context          Context information containing the principalId and locale
 59  
      *                         information about the caller of service operation
 60  
      * 
 61  
      * @throws DoesNotExistException     batchJobResultId not found
 62  
      * @throws InvalidParameterException invalid parameter
 63  
      * @throws MissingParameterException missing parameter
 64  
      * @throws OperationFailedException  unable to complete request
 65  
      * @throws PermissionDeniedException authorization failure
 66  
      */
 67  
     public BatchJobResultInfo getBatchJobResult(@WebParam(name = "batchJobResultId") String batchJobResultId,
 68  
             @WebParam(name = "context") ContextInfo context)
 69  
             throws DoesNotExistException, InvalidParameterException,
 70  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 71  
 
 72  
     /**
 73  
      * Retrieves a list of batch job results by id list.
 74  
      *
 75  
      * @param batchJobResultIds List of unique Ids of BatchJobResult
 76  
      * @param context           Context information containing the principalId and locale
 77  
      *                          information about the caller of service operation
 78  
      * @throws DoesNotExistException     batchJobResultId in the list not found
 79  
      * @throws InvalidParameterException invalid batchJobResultIds
 80  
      * @throws MissingParameterException missing batchJobResultIds
 81  
      * @throws OperationFailedException  unable to complete request
 82  
      * @throws PermissionDeniedException authorization failure
 83  
      */
 84  
     public List<BatchJobResultInfo> getBatchJobResultsByIds(@WebParam(name = "batchJobResultIds") List<String> batchJobResultIds,
 85  
             @WebParam(name = "context") ContextInfo context)
 86  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 87  
             OperationFailedException, PermissionDeniedException;
 88  
 
 89  
     /**
 90  
      * Retrieve BatchJobResult Ids by type
 91  
      *
 92  
      * @param typeKey      Unique key type of BatchJobResult
 93  
      * @param context     Context information containing the principalId and locale
 94  
      *                    information about the caller of service operation
 95  
      * @return List of BatchJobResult Ids
 96  
      * @throws DoesNotExistException     typeKey not found
 97  
      * @throws InvalidParameterException invalid parameter
 98  
      * @throws MissingParameterException missing parameter
 99  
      * @throws OperationFailedException  unable to complete request
 100  
      * @throws PermissionDeniedException authorization failure
 101  
      */
 102  
     public List<String> getBatchJobResultIdsByType(@WebParam(name = "typeKey") String typeKey,
 103  
             @WebParam(name = "context") ContextInfo context)
 104  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 105  
             OperationFailedException, PermissionDeniedException;
 106  
 
 107  
     /**
 108  
      * Retrieve BatchJobResult Ids by type created on or after a date
 109  
      *
 110  
      * @param typeKey     Unique key type of BatchJobResult
 111  
      * @param sinceDateCreated the date on which or after the result was created
 112  
      * @param context     Context information containing the principalId and locale
 113  
      *                    information about the caller of service operation
 114  
      * @return List of BatchJobResult Ids
 115  
      * @throws DoesNotExistException     typeKey not found
 116  
      * @throws InvalidParameterException invalid parameter
 117  
      * @throws MissingParameterException missing parameter
 118  
      * @throws OperationFailedException  unable to complete request
 119  
      * @throws PermissionDeniedException authorization failure
 120  
      */
 121  
     public List<String> getBatchJobResultIdsByTypeSinceDateCreated(@WebParam(name = "typeKey") String typeKey,
 122  
             @WebParam(name = "sinceDateCreated") Date sinceDateCreated,
 123  
             @WebParam(name = "context") ContextInfo context)
 124  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 125  
             OperationFailedException, PermissionDeniedException;
 126  
 
 127  
     /**
 128  
      * Retrieve BatchJobResult Ids by type and the value of a single parameter
 129  
      *
 130  
      * @param typeKey      Unique key type of BatchJobResult
 131  
      * @param parameter    key value pair used to match an existing parameter
 132  
      * @param context     Context information containing the principalId and locale
 133  
      *                    information about the caller of service operation
 134  
      * @return List of BatchJobResult Ids
 135  
      * @throws DoesNotExistException     typeKey not found
 136  
      * @throws InvalidParameterException invalid parameter
 137  
      * @throws MissingParameterException missing parameter
 138  
      * @throws OperationFailedException  unable to complete request
 139  
      * @throws PermissionDeniedException authorization failure
 140  
      */
 141  
     public List<String> getBatchJobResultIdsByTypeAndParameter(@WebParam(name = "typeKey") String typeKey,
 142  
             @WebParam(name = "parameter") AttributeInfo parameter,
 143  
             @WebParam(name = "context") ContextInfo context)
 144  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 145  
             OperationFailedException, PermissionDeniedException;
 146  
 
 147  
     /**
 148  
      * Retrieve BatchJobResult Ids by type and the value of a single global result
 149  
      *
 150  
      * @param typeKey      Unique key type of BatchJobResult
 151  
      * @param globalResult    key value pair used to match an single global result
 152  
      * @param context     Context information containing the principalId and locale
 153  
      *                    information about the caller of service operation
 154  
      * @return List of BatchJobResult Ids
 155  
      * @throws DoesNotExistException     typeKey not found
 156  
      * @throws InvalidParameterException invalid parameter
 157  
      * @throws MissingParameterException missing parameter
 158  
      * @throws OperationFailedException  unable to complete request
 159  
      * @throws PermissionDeniedException authorization failure
 160  
      */
 161  
     public List<String> getBatchJobResultIdsByTypeAndGlobalResult(@WebParam(name = "typeKey") String typeKey,
 162  
             @WebParam(name = "globalResult") AttributeInfo globalResult,
 163  
             @WebParam(name = "context") ContextInfo context)
 164  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 165  
             OperationFailedException, PermissionDeniedException;
 166  
 
 167  
     /**
 168  
      * Creates a new BatchJobResult
 169  
      * 
 170  
      * @param batchJobResultTypeKey     batch job result type key
 171  
      * @param batchJobResultInfo    object to be created
 172  
      * @param context      Context information containing the principalId and locale
 173  
      *                     information about the caller of service operation
 174  
      * @return newly created BatchJobResultInfo
 175  
      * @throws DoesNotExistException        termId or batchJobResultTypeKey not found
 176  
      * @throws DataValidationErrorException One or more values invalid for this operation
 177  
      * @throws InvalidParameterException    One or more parameters invalid
 178  
      * @throws MissingParameterException    One or more parameters missing
 179  
      * @throws OperationFailedException     unable to complete request
 180  
      * @throws PermissionDeniedException    authorization failure
 181  
      */
 182  
     public BatchJobResultInfo createBatchJobResult(@WebParam(name = "batchJobResultTypeKey") String batchJobResultTypeKey,
 183  
             @WebParam(name = "batchJobResultInfo") BatchJobResultInfo batchJobResultInfo,
 184  
             @WebParam(name = "context") ContextInfo context)
 185  
             throws DoesNotExistException, DataValidationErrorException, InvalidParameterException,
 186  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException;
 187  
 
 188  
     /**
 189  
      * Updates an existing BatchJobResult.
 190  
      *
 191  
      * @param batchJobResultId   Id of BatchJobResult to be updated
 192  
      * @param batchJobResultInfo Details of updates to the BatchJobResult
 193  
      * @param context            Context information containing the principalId and locale
 194  
      *                           information about the caller of service operation
 195  
      * @return updated BatchJobResult
 196  
      * @throws DataValidationErrorException One or more values invalid for this operation
 197  
      * @throws DoesNotExistException      the BatchJobResult does not exist
 198  
      * @throws InvalidParameterException    One or more parameters invalid
 199  
      * @throws MissingParameterException    One or more parameters missing
 200  
      * @throws OperationFailedException     unable to complete request
 201  
      * @throws PermissionDeniedException    authorization failure
 202  
      * @throws VersionMismatchException     The action was attempted on an out of date version.
 203  
      */
 204  
     public BatchJobResultInfo updateBatchJobResult(@WebParam(name = "batchJobResultId") String batchJobResultId,
 205  
             @WebParam(name = "batchJobResultInfo") BatchJobResultInfo batchJobResultInfo,
 206  
             @WebParam(name = "context") ContextInfo context)
 207  
             throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 208  
             MissingParameterException, OperationFailedException, PermissionDeniedException,
 209  
             ReadOnlyException, VersionMismatchException;
 210  
 
 211  
     /**
 212  
      * Update progress information
 213  
      *
 214  
      * @param batchJobResultId   Id of BatchJobResult to be updated
 215  
      * @param itemsProcessed new count of the number of items processed
 216  
      * @param context            Context information containing the principalId and locale
 217  
      *                           information about the caller of service operation
 218  
      * @return StatusInfo indicates the update worked
 219  
      * @throws DataValidationErrorException One or more values invalid for this operation
 220  
      * @throws DoesNotExistException      the BatchJobResult does not exist
 221  
      * @throws InvalidParameterException    One or more parameters invalid
 222  
      * @throws MissingParameterException    One or more parameters missing
 223  
      * @throws OperationFailedException     unable to complete request
 224  
      * @throws PermissionDeniedException    authorization failure
 225  
      * @throws VersionMismatchException     The action was attempted on an out of date version.
 226  
      */
 227  
     public BatchJobResultInfo updateBatchJobProgress(@WebParam(name = "batchJobResultId") String batchJobResultId,
 228  
             @WebParam(name = "itemsProcessed") Integer itemsProcessed,
 229  
             @WebParam(name = "context") ContextInfo context)
 230  
             throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 231  
             MissingParameterException, OperationFailedException, PermissionDeniedException,
 232  
             ReadOnlyException, VersionMismatchException;
 233  
 
 234  
     /**
 235  
      * Deletes an existing BatchJobResult. 
 236  
      *
 237  
      * @param batchJobResultId 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 SeatPoolDefinition does not exist
 242  
      * @throws InvalidParameterException One or more parameters invalid
 243  
      * @throws MissingParameterException One or more parameters missing
 244  
      * @throws OperationFailedException  unable to complete request
 245  
      * @throws PermissionDeniedException authorization failure
 246  
      */
 247  
     public StatusInfo deleteBatchJobResult(@WebParam(name = "batchJobResultId") String batchJobResultId,
 248  
             @WebParam(name = "context") ContextInfo context)
 249  
             throws DoesNotExistException, InvalidParameterException,
 250  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 251  
 
 252  
     /**
 253  
      * Validates a BatchJobResult. Depending on the value of validationType,
 254  
      * this validation could be limited to tests on just the current object and
 255  
      * its directly contained sub-objects or expanded to perform all tests
 256  
      * related to this object. If an identifier is present for the academic
 257  
      * calendar and a record is found for that identifier, the validation checks
 258  
      * if the academic calendar can be shifted to the new values. If a record
 259  
      * cannot be found for the identifier, it is assumed that the record does
 260  
      * not exist and as such, the checks performed will be much shallower,
 261  
      * typically mimicking those performed by setting the validationType to the
 262  
      * current object. This is a slightly different pattern from the standard
 263  
      * validation as the caller provides the identifier in the create statement
 264  
      * instead of the server assigning an identifier.
 265  
      *
 266  
      * @param validationType     Identifier of the extent of validation
 267  
      * @param batchJobResultInfo the batchJobResult information to be tested.
 268  
      * @param context            Context information containing the principalId and locale
 269  
      *                           information about the caller of service operation
 270  
      * @return the results from performing the validation
 271  
      * @throws DoesNotExistException     validationTypeKey not found
 272  
      * @throws InvalidParameterException invalid validationTypeKey, batchJobResultInfo
 273  
      * @throws MissingParameterException missing validationTypeKey, batchJobResultInfo
 274  
      * @throws OperationFailedException  unable to complete request
 275  
      */
 276  
     public List<ValidationResultInfo> validateBatchJobResult(@WebParam(name = "validationType") String validationType,
 277  
             @WebParam(name = "batchJobResultInfo") BatchJobResultInfo batchJobResultInfo,
 278  
             @WebParam(name = "context") ContextInfo context)
 279  
             throws DoesNotExistException, InvalidParameterException,
 280  
             MissingParameterException, OperationFailedException;
 281  
 
 282  
     ////
 283  
     //// items
 284  
     ////
 285  
     /**
 286  
      * Retrieves a list of result items associated with the batch job result id
 287  
      *
 288  
      * @param batchJobResultId Unique Ids of the rollover results for which the items are to be fetched
 289  
      * @param context           Context information containing the principalId and locale
 290  
      *                          information about the caller of service operation
 291  
      * @throws DoesNotExistException     batchJobResultId in the list 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<BatchJobResultItemInfo> getBatchJobResultItemsByResultId(@WebParam(name = "batchJobResultId") String batchJobResultId,
 298  
             @WebParam(name = "context") ContextInfo context)
 299  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 300  
             OperationFailedException, PermissionDeniedException;
 301  
 
 302  
     /**
 303  
      * Retrieves a list of result item ids associated with a particular batch job
 304  
      * result type and a source id.
 305  
      * 
 306  
      * This would allows you to get all the result items associated with a particular course offering 
 307  
      * that has been rolled over.
 308  
      *
 309  
      * @param batchJobResultTypeKey Unique Ids of the rollover results for which the items are to be fetched
 310  
      * @param sourceId source id to be matched
 311  
      * @param context           Context information containing the principalId and locale
 312  
      *                          information about the caller of service operation
 313  
      * @throws DoesNotExistException     batchJobResultId in the list not found
 314  
      * @throws InvalidParameterException invalid parameter
 315  
      * @throws MissingParameterException missing parameter
 316  
      * @throws OperationFailedException  unable to complete request
 317  
      * @throws PermissionDeniedException authorization failure
 318  
      */
 319  
     public List<String> getBatchJobResultItemIdsByResultTypeAndSourceId(@WebParam(name = "batchJobResultTypeKey") String batchJobResultTypeKey,
 320  
             @WebParam(name = "sourceId") String sourceId,
 321  
             @WebParam(name = "context") ContextInfo context)
 322  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 323  
             OperationFailedException, PermissionDeniedException;
 324  
 
 325  
     
 326  
      /**
 327  
      * Retrieves a list of result item ids associated with a particular batch job
 328  
      * result type and a source id.
 329  
      * 
 330  
      * This would allows you to get all the result items associated with a particular course offering 
 331  
      * that has been created via a rolled over.
 332  
      *
 333  
      * @param batchJobResultTypeKey Unique Ids of the rollover results for which the items are to be fetched
 334  
      * @param targetId target id to be matched
 335  
      * @param context           Context information containing the principalId and locale
 336  
      *                          information about the caller of service operation
 337  
      * @throws DoesNotExistException     batchJobResultId in the list not found
 338  
      * @throws InvalidParameterException invalid parameter
 339  
      * @throws MissingParameterException missing parameter
 340  
      * @throws OperationFailedException  unable to complete request
 341  
      * @throws PermissionDeniedException authorization failure
 342  
      */
 343  
     public List<String> getBatchJobResultItemIdsByResultTypeAndTargetId(@WebParam(name = "batchJobResultTypeKey") String batchJobResultTypeKey,
 344  
             @WebParam(name = "targetId") String targetId,
 345  
             @WebParam(name = "context") ContextInfo context)
 346  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 347  
             OperationFailedException, PermissionDeniedException;
 348  
     /**
 349  
      * Retrieve information about a BatchJobResultItem
 350  
      *
 351  
      * @param batchJobResultItemId Unique Id of the BatchJobResultItem
 352  
      * @param context          Context information containing the principalId and locale
 353  
      *                         information about the caller of service operation
 354  
      * @throws DoesNotExistException     batchJobResultItemId not found
 355  
      * @throws InvalidParameterException invalid parameter
 356  
      * @throws MissingParameterException missing parameter
 357  
      * @throws OperationFailedException  unable to complete request
 358  
      * @throws PermissionDeniedException authorization failure
 359  
      */
 360  
     public BatchJobResultItemInfo getBatchJobResultItem(@WebParam(name = "batchJobResultItemId") String batchJobResultItemId,
 361  
             @WebParam(name = "context") ContextInfo context)
 362  
             throws DoesNotExistException, InvalidParameterException,
 363  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 364  
 
 365  
     /**
 366  
      * Retrieves a list of batch job result items by id list.
 367  
      *
 368  
      * @param batchJobResultItemIds List of unique Ids of BatchJobResultItem
 369  
      * @param context           Context information containing the principalId and locale
 370  
      *                          information about the caller of service operation
 371  
      * @throws DoesNotExistException     batchJobResultItemId in the list not found
 372  
      * @throws InvalidParameterException invalid batchJobResultItemIds
 373  
      * @throws MissingParameterException missing batchJobResultItemIds
 374  
      * @throws OperationFailedException  unable to complete request
 375  
      * @throws PermissionDeniedException authorization failure
 376  
      */
 377  
     public List<BatchJobResultItemInfo> getBatchJobResultItemsByIds(@WebParam(name = "batchJobResultItemIds") List<String> batchJobResultItemIds,
 378  
             @WebParam(name = "context") ContextInfo context)
 379  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 380  
             OperationFailedException, PermissionDeniedException;
 381  
 
 382  
     /**
 383  
      * Creates a new BatchJobResultItem
 384  
      * 
 385  
      * @param batchJobResultId     Id of the corresponding batch job result
 386  
      * @param batchJobResultItemTypeKey     batch job result type key
 387  
      * @param batchJobResultItemInfo    object to be created
 388  
      * @param context      Context information containing the principalId and locale
 389  
      *                     information about the caller of service operation
 390  
      * @return newly created BatchJobResultItemInfo
 391  
      * @throws DoesNotExistException        termId or batchJobResultItemTypeKey not found
 392  
      * @throws DataValidationErrorException One or more values invalid for this operation
 393  
      * @throws InvalidParameterException    One or more parameters invalid
 394  
      * @throws MissingParameterException    One or more parameters missing
 395  
      * @throws OperationFailedException     unable to complete request
 396  
      * @throws PermissionDeniedException    authorization failure
 397  
      */
 398  
     public BatchJobResultItemInfo createBatchJobResultItem(@WebParam(name = "batchJobResultId") String batchJobResultId,
 399  
             @WebParam(name = "batchJobResultItemTypeKey") String batchJobResultItemTypeKey,
 400  
             @WebParam(name = "batchJobResultItemInfo") BatchJobResultItemInfo batchJobResultItemInfo,
 401  
             @WebParam(name = "context") ContextInfo context)
 402  
             throws DoesNotExistException, DataValidationErrorException, InvalidParameterException,
 403  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException;
 404  
 
 405  
     /**
 406  
      * Bulk create of  BatchJobResultItems
 407  
      * All must be for the same result but the types may vary.
 408  
      * 
 409  
      * @param batchJobResultId     Id of the corresponding batch job result
 410  
      * @param batchJobResultItemInfos    objects to be created
 411  
      * @param context      Context information containing the principalId and locale
 412  
      *                     information about the caller of service operation
 413  
      * @return count of number of items created
 414  
      * @throws DoesNotExistException        termId or batchJobResultItemTypeKey not found
 415  
      * @throws DataValidationErrorException One or more values invalid for this operation
 416  
      * @throws InvalidParameterException    One or more parameters invalid
 417  
      * @throws MissingParameterException    One or more parameters missing
 418  
      * @throws OperationFailedException     unable to complete request
 419  
      * @throws PermissionDeniedException    authorization failure
 420  
      */
 421  
     public Integer createBatchJobResultItems(@WebParam(name = "batchJobResultId") String batchJobResultId,
 422  
             @WebParam(name = "batchJobResultItemInfos") List<BatchJobResultItemInfo> batchJobResultItemInfos,
 423  
             @WebParam(name = "context") ContextInfo context)
 424  
             throws DoesNotExistException, DataValidationErrorException, InvalidParameterException,
 425  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException;
 426  
 
 427  
     /**
 428  
      * Updates an existing BatchJobResultItem.
 429  
      *
 430  
      * @param batchJobResultItemId   Id of BatchJobResultItem to be updated
 431  
      * @param batchJobResultItemInfo Details of updates to the BatchJobResultItem
 432  
      * @param context            Context information containing the principalId and locale
 433  
      *                           information about the caller of service operation
 434  
      * @return updated BatchJobResultItem
 435  
      * @throws DataValidationErrorException One or more values invalid for this operation
 436  
      * @throws DoesNotExistException      the BatchJobResultItem does not exist
 437  
      * @throws InvalidParameterException    One or more parameters invalid
 438  
      * @throws MissingParameterException    One or more parameters missing
 439  
      * @throws OperationFailedException     unable to complete request
 440  
      * @throws PermissionDeniedException    authorization failure
 441  
      * @throws VersionMismatchException     The action was attempted on an out of date version.
 442  
      */
 443  
     public BatchJobResultItemInfo updateBatchJobResultItem(@WebParam(name = "batchJobResultItemId") String batchJobResultItemId,
 444  
             @WebParam(name = "batchJobResultItemInfo") BatchJobResultItemInfo batchJobResultItemInfo,
 445  
             @WebParam(name = "context") ContextInfo context)
 446  
             throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 447  
             MissingParameterException, OperationFailedException, PermissionDeniedException,
 448  
             ReadOnlyException, VersionMismatchException;
 449  
 
 450  
     /**
 451  
      * Deletes an existing BatchJobResultItem. 
 452  
      *
 453  
      * @param batchJobResultItemId the Id of the ActivityOffering to be deleted
 454  
      * @param context          Context information containing the principalId and locale
 455  
      *                         information about the caller of service operation
 456  
      * @return status of the operation (success, failed)
 457  
      * @throws DoesNotExistException     the SeatPoolDefinition does not exist
 458  
      * @throws InvalidParameterException One or more parameters invalid
 459  
      * @throws MissingParameterException One or more parameters missing
 460  
      * @throws OperationFailedException  unable to complete request
 461  
      * @throws PermissionDeniedException authorization failure
 462  
      */
 463  
     public StatusInfo deleteBatchJobResultItem(@WebParam(name = "batchJobResultItemId") String batchJobResultItemId,
 464  
             @WebParam(name = "context") ContextInfo context)
 465  
             throws DoesNotExistException, InvalidParameterException,
 466  
             MissingParameterException, OperationFailedException, PermissionDeniedException;
 467  
 
 468  
     /**
 469  
      * Validates a BatchJobResultItem. Depending on the value of validationType,
 470  
      * this validation could be limited to tests on just the current object and
 471  
      * its directly contained sub-objects or expanded to perform all tests
 472  
      * related to this object. If an identifier is present for the academic
 473  
      * calendar and a record is found for that identifier, the validation checks
 474  
      * if the academic calendar can be shifted to the new values. If a record
 475  
      * cannot be found for the identifier, it is assumed that the record does
 476  
      * not exist and as such, the checks performed will be much shallower,
 477  
      * typically mimicking those performed by setting the validationType to the
 478  
      * current object. This is a slightly different pattern from the standard
 479  
      * validation as the caller provides the identifier in the create statement
 480  
      * instead of the server assigning an identifier.
 481  
      *
 482  
      * @param validationType     Identifier of the extent of validation
 483  
      * @param batchJobResultItemInfo the batchJobResultItem information to be tested.
 484  
      * @param context            Context information containing the principalId and locale
 485  
      *                           information about the caller of service operation
 486  
      * @return the results from performing the validation
 487  
      * @throws DoesNotExistException     validationTypeKey not found
 488  
      * @throws InvalidParameterException invalid validationTypeKey, batchJobResultItemInfo
 489  
      * @throws MissingParameterException missing validationTypeKey, batchJobResultItemInfo
 490  
      * @throws OperationFailedException  unable to complete request
 491  
      */
 492  
     public List<ValidationResultInfo> validateBatchJobResultItem(@WebParam(name = "validationType") String validationType,
 493  
             @WebParam(name = "batchJobResultItemInfo") BatchJobResultItemInfo batchJobResultItemInfo,
 494  
             @WebParam(name = "context") ContextInfo context)
 495  
             throws DoesNotExistException, InvalidParameterException,
 496  
             MissingParameterException, OperationFailedException;
 497  
 }