test_class.declarator: businessObjectDataHelper
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private BusinessObjectDataHelper businessObjectDataHelper;
test_class.type: BusinessObjectDataHelper
test_class.var_name: businessObjectDataHelper
test_class.declarator: notificationEventService
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private NotificationEventService notificationEventService;
test_class.type: NotificationEventService
test_class.var_name: notificationEventService
test_class.declarator: uploadDownloadRestController
test_class.modifier: @InjectMocks
      private
test_class.original_string: @InjectMocks
      private UploadDownloadRestController uploadDownloadRestController;
test_class.type: UploadDownloadRestController
test_class.var_name: uploadDownloadRestController
test_class.declarator: uploadDownloadService
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private UploadDownloadService uploadDownloadService;
test_class.type: UploadDownloadService
test_class.var_name: uploadDownloadService
test_class.file: herd-code/herd-rest/src/test/java/org/finra/herd/rest/UploadDownloadRestControllerTest.java
test_class.identifier: UploadDownloadRestControllerTest
test_class.superclass: extends AbstractRestTest
test_case.body: @Test
      public void testInitiateUploadSingle()
      {
          // Create business object format keys.
          BusinessObjectFormatKey sourceBusinessObjectFormatKey =
              new BusinessObjectFormatKey(BDEF_NAMESPACE, BDEF_NAME, FORMAT_USAGE_CODE, FORMAT_FILE_TYPE_CODE, FORMAT_VERSION);
          BusinessObjectFormatKey targetBusinessObjectFormatKey =
              new BusinessObjectFormatKey(BDEF_NAMESPACE_2, BDEF_NAME_2, FORMAT_USAGE_CODE_2, FORMAT_FILE_TYPE_CODE_2, FORMAT_VERSION_2);
  
          // Create a file object.
          File file = new File(LOCAL_FILE, FILE_SIZE);
  
          // Create a request.
          UploadSingleInitiationRequest request = new UploadSingleInitiationRequest(sourceBusinessObjectFormatKey, targetBusinessObjectFormatKey,
              Lists.newArrayList(new Attribute(ATTRIBUTE_NAME_1_MIXED_CASE, ATTRIBUTE_VALUE_1)), file, STORAGE_NAME);
  
          // Create business object data keys.
          BusinessObjectDataKey sourceBusinessObjectDataKey =
              new BusinessObjectDataKey(BDEF_NAMESPACE, BDEF_NAME, FORMAT_USAGE_CODE, FORMAT_FILE_TYPE_CODE, FORMAT_VERSION, PARTITION_VALUE, SUBPARTITION_VALUES,
                  DATA_VERSION);
          BusinessObjectDataKey targetBusinessObjectDataKey =
              new BusinessObjectDataKey(BDEF_NAMESPACE_2, BDEF_NAME_2, FORMAT_USAGE_CODE_2, FORMAT_FILE_TYPE_CODE_2, FORMAT_VERSION_2, PARTITION_VALUE_2,
                  SUBPARTITION_VALUES_2, DATA_VERSION_2);
  
          // Create a business object data objects.
          BusinessObjectData sourceBusinessObjectData = new BusinessObjectData();
          sourceBusinessObjectData.setId(ID);
          sourceBusinessObjectData.setStatus(BDATA_STATUS);
          sourceBusinessObjectData.setStorageUnits(Lists.newArrayList(
              new StorageUnit(new Storage(STORAGE_NAME, STORAGE_PLATFORM_CODE, NO_ATTRIBUTES), NO_STORAGE_DIRECTORY, NO_STORAGE_FILES, STORAGE_UNIT_STATUS,
                  NO_STORAGE_UNIT_STATUS_HISTORY, NO_STORAGE_POLICY_TRANSITION_FAILED_ATTEMPTS, NO_RESTORE_EXPIRATION_ON)));
          BusinessObjectData targetBusinessObjectData = new BusinessObjectData();
          targetBusinessObjectData.setId(ID_2);
          targetBusinessObjectData.setStatus(BDATA_STATUS_2);
          targetBusinessObjectData.setStorageUnits(Lists.newArrayList(
              new StorageUnit(new Storage(STORAGE_NAME_2, STORAGE_PLATFORM_CODE, NO_ATTRIBUTES), NO_STORAGE_DIRECTORY, NO_STORAGE_FILES, STORAGE_UNIT_STATUS_2,
                  NO_STORAGE_UNIT_STATUS_HISTORY, NO_STORAGE_POLICY_TRANSITION_FAILED_ATTEMPTS, NO_RESTORE_EXPIRATION_ON)));
  
          // Create a response.
          UploadSingleInitiationResponse response =
              new UploadSingleInitiationResponse(sourceBusinessObjectData, targetBusinessObjectData, file, UUID_VALUE, AWS_ASSUMED_ROLE_ACCESS_KEY,
                  AWS_ASSUMED_ROLE_SECRET_KEY, AWS_ASSUMED_ROLE_SESSION_TOKEN, AWS_ASSUMED_ROLE_SESSION_EXPIRATION_TIME, AWS_KMS_KEY_ID, STORAGE_NAME);
  
          // Mock the external calls.
          when(uploadDownloadService.initiateUploadSingle(request)).thenReturn(response);
          when(businessObjectDataHelper.getBusinessObjectDataKey(sourceBusinessObjectData)).thenReturn(sourceBusinessObjectDataKey);
          when(businessObjectDataHelper.getBusinessObjectDataKey(targetBusinessObjectData)).thenReturn(targetBusinessObjectDataKey);
  
          // Call the method under test.
          UploadSingleInitiationResponse result = uploadDownloadRestController.initiateUploadSingle(request);
  
          // Verify the external calls.
          verify(uploadDownloadService).initiateUploadSingle(request);
          verify(businessObjectDataHelper).getBusinessObjectDataKey(sourceBusinessObjectData);
          verify(businessObjectDataHelper).getBusinessObjectDataKey(targetBusinessObjectData);
          verify(notificationEventService)
              .processBusinessObjectDataNotificationEventAsync(NotificationEventTypeEntity.EventTypesBdata.BUS_OBJCT_DATA_RGSTN, sourceBusinessObjectDataKey,
                  BDATA_STATUS, null);
          verify(notificationEventService)
              .processBusinessObjectDataNotificationEventAsync(NotificationEventTypeEntity.EventTypesBdata.BUS_OBJCT_DATA_STTS_CHG, sourceBusinessObjectDataKey,
                  BDATA_STATUS, null);
          verify(notificationEventService)
              .processStorageUnitNotificationEventAsync(NotificationEventTypeEntity.EventTypesStorageUnit.STRGE_UNIT_STTS_CHG, sourceBusinessObjectDataKey,
                  STORAGE_NAME, STORAGE_UNIT_STATUS, null);
          verify(notificationEventService)
              .processBusinessObjectDataNotificationEventAsync(NotificationEventTypeEntity.EventTypesBdata.BUS_OBJCT_DATA_RGSTN, targetBusinessObjectDataKey,
                  BDATA_STATUS_2, null);
          verify(notificationEventService)
              .processBusinessObjectDataNotificationEventAsync(NotificationEventTypeEntity.EventTypesBdata.BUS_OBJCT_DATA_STTS_CHG, targetBusinessObjectDataKey,
                  BDATA_STATUS_2, null);
          verify(notificationEventService)
              .processStorageUnitNotificationEventAsync(NotificationEventTypeEntity.EventTypesStorageUnit.STRGE_UNIT_STTS_CHG, targetBusinessObjectDataKey,
                  STORAGE_NAME_2, STORAGE_UNIT_STATUS_2, null);
          verifyNoMoreInteractionsHelper();
  
          // Validate the results.
          assertEquals(response, result);
      }
test_case.class_method_signature: UploadDownloadRestControllerTest.testInitiateUploadSingle()
test_case.full_signature: @Test public void testInitiateUploadSingle()
test_case.identifier: testInitiateUploadSingle
test_case.invocations: newArrayList setId setStatus setStorageUnits newArrayList setId setStatus setStorageUnits newArrayList thenReturn when initiateUploadSingle thenReturn when getBusinessObjectDataKey thenReturn when getBusinessObjectDataKey initiateUploadSingle initiateUploadSingle verify getBusinessObjectDataKey verify getBusinessObjectDataKey verify processBusinessObjectDataNotificationEventAsync verify processBusinessObjectDataNotificationEventAsync verify processStorageUnitNotificationEventAsync verify processBusinessObjectDataNotificationEventAsync verify processBusinessObjectDataNotificationEventAsync verify processStorageUnitNotificationEventAsync verify verifyNoMoreInteractionsHelper assertEquals
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testInitiateUploadSingle()
focal_class.declarator: businessObjectDataHelper
focal_class.modifier: @Autowired
      private
focal_class.original_string: @Autowired
      private BusinessObjectDataHelper businessObjectDataHelper;
focal_class.type: BusinessObjectDataHelper
focal_class.var_name: businessObjectDataHelper
focal_class.declarator: notificationEventService
focal_class.modifier: @Autowired
      private
focal_class.original_string: @Autowired
      private NotificationEventService notificationEventService;
focal_class.type: NotificationEventService
focal_class.var_name: notificationEventService
focal_class.declarator: uploadDownloadService
focal_class.modifier: @Autowired
      private
focal_class.original_string: @Autowired
      private UploadDownloadService uploadDownloadService;
focal_class.type: UploadDownloadService
focal_class.var_name: uploadDownloadService
focal_class.file: herd-code/herd-rest/src/main/java/org/finra/herd/rest/UploadDownloadRestController.java
focal_class.identifier: UploadDownloadRestController
focal_class.class_method_signature: UploadDownloadRestController.initiateUploadSingle(@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
focal_class.full_signature: @RequestMapping(value = "/upload/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_UPLOAD_POST) public UploadSingleInitiationResponse initiateUploadSingle(@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
focal_class.identifier: initiateUploadSingle
focal_class.modifiers: @RequestMapping(value = "/upload/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_UPLOAD_POST) public
focal_class.parameters: (@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
focal_class.return: UploadSingleInitiationResponse
focal_class.signature: UploadSingleInitiationResponse initiateUploadSingle(@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
focal_class.class_method_signature: UploadDownloadRestController.initiateDownloadSingle(@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.full_signature: @RequestMapping(value = "/download/single/initiation/namespaces/{namespace}/businessObjectDefinitionNames/{businessObjectDefinitionName}" + "/businessObjectFormatUsages/{businessObjectFormatUsage}/businessObjectFormatFileTypes/{businessObjectFormatFileType}" + "/businessObjectFormatVersions/{businessObjectFormatVersion}/partitionValues/{partitionValue}" + "/businessObjectDataVersions/{businessObjectDataVersion}", method = RequestMethod.GET) @Secured(SecurityFunctions.FN_DOWNLOAD_GET) public DownloadSingleInitiationResponse initiateDownloadSingle(@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.identifier: initiateDownloadSingle
focal_class.modifiers: @RequestMapping(value = "/download/single/initiation/namespaces/{namespace}/businessObjectDefinitionNames/{businessObjectDefinitionName}" + "/businessObjectFormatUsages/{businessObjectFormatUsage}/businessObjectFormatFileTypes/{businessObjectFormatFileType}" + "/businessObjectFormatVersions/{businessObjectFormatVersion}/partitionValues/{partitionValue}" + "/businessObjectDataVersions/{businessObjectDataVersion}", method = RequestMethod.GET) @Secured(SecurityFunctions.FN_DOWNLOAD_GET) public
focal_class.parameters: (@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.return: DownloadSingleInitiationResponse
focal_class.signature: DownloadSingleInitiationResponse initiateDownloadSingle(@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.class_method_signature: UploadDownloadRestController.extendUploadSingleCredentials(@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.full_signature: @RequestMapping(value = "/upload/single/credential/extension/namespaces/{namespace}/businessObjectDefinitionNames/{businessObjectDefinitionName}" + "/businessObjectFormatUsages/{businessObjectFormatUsage}/businessObjectFormatFileTypes/{businessObjectFormatFileType}" + "/businessObjectFormatVersions/{businessObjectFormatVersion}/partitionValues/{partitionValue}" + "/businessObjectDataVersions/{businessObjectDataVersion}", method = RequestMethod.GET) @Secured(SecurityFunctions.FN_UPLOAD_EXTEND_CREDENTIALS_GET) public UploadSingleCredentialExtensionResponse extendUploadSingleCredentials(@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.identifier: extendUploadSingleCredentials
focal_class.modifiers: @RequestMapping(value = "/upload/single/credential/extension/namespaces/{namespace}/businessObjectDefinitionNames/{businessObjectDefinitionName}" + "/businessObjectFormatUsages/{businessObjectFormatUsage}/businessObjectFormatFileTypes/{businessObjectFormatFileType}" + "/businessObjectFormatVersions/{businessObjectFormatVersion}/partitionValues/{partitionValue}" + "/businessObjectDataVersions/{businessObjectDataVersion}", method = RequestMethod.GET) @Secured(SecurityFunctions.FN_UPLOAD_EXTEND_CREDENTIALS_GET) public
focal_class.parameters: (@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.return: UploadSingleCredentialExtensionResponse
focal_class.signature: UploadSingleCredentialExtensionResponse extendUploadSingleCredentials(@PathVariable("namespace") String namespace,
          @PathVariable("businessObjectDefinitionName") String businessObjectDefinitionName,
          @PathVariable("businessObjectFormatUsage") String businessObjectFormatUsage,
          @PathVariable("businessObjectFormatFileType") String businessObjectFormatFileType,
          @PathVariable("businessObjectFormatVersion") Integer businessObjectFormatVersion, @PathVariable("partitionValue") String partitionValue,
          @PathVariable("businessObjectDataVersion") Integer businessObjectDataVersion)
focal_class.class_method_signature: UploadDownloadRestController.initiateDownloadSingleSampleFile(
          @RequestBody DownloadBusinessObjectDefinitionSampleDataFileSingleInitiationRequest downloadBusinesObjectDefinitionSingleInitiationRequest)
focal_class.full_signature: @RequestMapping(value = "/download/businessObjectDefinitionSampleDataFile/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_DOWNLOAD_BUSINESS_OBJECT_DEFINITION_SAMPLE_DATA_FILE_POST) public DownloadBusinessObjectDefinitionSampleDataFileSingleInitiationResponse initiateDownloadSingleSampleFile(
          @RequestBody DownloadBusinessObjectDefinitionSampleDataFileSingleInitiationRequest downloadBusinesObjectDefinitionSingleInitiationRequest)
focal_class.identifier: initiateDownloadSingleSampleFile
focal_class.modifiers: @RequestMapping(value = "/download/businessObjectDefinitionSampleDataFile/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_DOWNLOAD_BUSINESS_OBJECT_DEFINITION_SAMPLE_DATA_FILE_POST) public
focal_class.parameters: (
          @RequestBody DownloadBusinessObjectDefinitionSampleDataFileSingleInitiationRequest downloadBusinesObjectDefinitionSingleInitiationRequest)
focal_class.return: DownloadBusinessObjectDefinitionSampleDataFileSingleInitiationResponse
focal_class.signature: DownloadBusinessObjectDefinitionSampleDataFileSingleInitiationResponse initiateDownloadSingleSampleFile(
          @RequestBody DownloadBusinessObjectDefinitionSampleDataFileSingleInitiationRequest downloadBusinesObjectDefinitionSingleInitiationRequest)
focal_class.class_method_signature: UploadDownloadRestController.initiateUploadSampleFile(
          @RequestBody UploadBusinessObjectDefinitionSampleDataFileInitiationRequest uploadBusinessObjectDefinitionSampleDataFileInitiationRequest)
focal_class.full_signature: @RequestMapping(value = "/upload/businessObjectDefinitionSampleDataFile/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_UPLOAD_BUSINESS_OBJECT_DEFINITION_SAMPLE_DATA_FILE_POST) public UploadBusinessObjectDefinitionSampleDataFileInitiationResponse initiateUploadSampleFile(
          @RequestBody UploadBusinessObjectDefinitionSampleDataFileInitiationRequest uploadBusinessObjectDefinitionSampleDataFileInitiationRequest)
focal_class.identifier: initiateUploadSampleFile
focal_class.modifiers: @RequestMapping(value = "/upload/businessObjectDefinitionSampleDataFile/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_UPLOAD_BUSINESS_OBJECT_DEFINITION_SAMPLE_DATA_FILE_POST) public
focal_class.parameters: (
          @RequestBody UploadBusinessObjectDefinitionSampleDataFileInitiationRequest uploadBusinessObjectDefinitionSampleDataFileInitiationRequest)
focal_class.return: UploadBusinessObjectDefinitionSampleDataFileInitiationResponse
focal_class.signature: UploadBusinessObjectDefinitionSampleDataFileInitiationResponse initiateUploadSampleFile(
          @RequestBody UploadBusinessObjectDefinitionSampleDataFileInitiationRequest uploadBusinessObjectDefinitionSampleDataFileInitiationRequest)
focal_class.class_method_signature: UploadDownloadRestController.initiateDownloadSingleBusinessObjectDataStorageFile(
          @RequestBody DownloadBusinessObjectDataStorageFileSingleInitiationRequest downloadBusinessObjectDataStorageFileSingleInitiationRequest)
focal_class.full_signature: @RequestMapping(value = "/download/businessObjectDataStorageFile/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_DOWNLOAD_BUSINESS_OBJECT_DATA_STORAGE_FILE_POST) public DownloadBusinessObjectDataStorageFileSingleInitiationResponse initiateDownloadSingleBusinessObjectDataStorageFile(
          @RequestBody DownloadBusinessObjectDataStorageFileSingleInitiationRequest downloadBusinessObjectDataStorageFileSingleInitiationRequest)
focal_class.identifier: initiateDownloadSingleBusinessObjectDataStorageFile
focal_class.modifiers: @RequestMapping(value = "/download/businessObjectDataStorageFile/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_DOWNLOAD_BUSINESS_OBJECT_DATA_STORAGE_FILE_POST) public
focal_class.parameters: (
          @RequestBody DownloadBusinessObjectDataStorageFileSingleInitiationRequest downloadBusinessObjectDataStorageFileSingleInitiationRequest)
focal_class.return: DownloadBusinessObjectDataStorageFileSingleInitiationResponse
focal_class.signature: DownloadBusinessObjectDataStorageFileSingleInitiationResponse initiateDownloadSingleBusinessObjectDataStorageFile(
          @RequestBody DownloadBusinessObjectDataStorageFileSingleInitiationRequest downloadBusinessObjectDataStorageFileSingleInitiationRequest)
focal_class.superclass: extends HerdBaseController
focal_method.body: @RequestMapping(value = "/upload/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"})
      @Secured(SecurityFunctions.FN_UPLOAD_POST)
      public UploadSingleInitiationResponse initiateUploadSingle(@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
      {
          UploadSingleInitiationResponse uploadSingleInitiationResponse = uploadDownloadService.initiateUploadSingle(uploadSingleInitiationRequest);
  
          // Trigger notifications.
          for (BusinessObjectData businessObjectData : Arrays
              .asList(uploadSingleInitiationResponse.getSourceBusinessObjectData(), uploadSingleInitiationResponse.getTargetBusinessObjectData()))
          {
              BusinessObjectDataKey businessObjectDataKey = businessObjectDataHelper.getBusinessObjectDataKey(businessObjectData);
  
              // Create business object data notifications.
              for (NotificationEventTypeEntity.EventTypesBdata eventType : Arrays
                  .asList(NotificationEventTypeEntity.EventTypesBdata.BUS_OBJCT_DATA_RGSTN, NotificationEventTypeEntity.EventTypesBdata.BUS_OBJCT_DATA_STTS_CHG))
              {
                  notificationEventService
                      .processBusinessObjectDataNotificationEventAsync(eventType, businessObjectDataKey, businessObjectData.getStatus(), null);
              }
  
              // Create storage unit notifications.
              for (StorageUnit storageUnit : businessObjectData.getStorageUnits())
              {
                  notificationEventService
                      .processStorageUnitNotificationEventAsync(NotificationEventTypeEntity.EventTypesStorageUnit.STRGE_UNIT_STTS_CHG, businessObjectDataKey,
                          storageUnit.getStorage().getName(), storageUnit.getStorageUnitStatus(), null);
              }
          }
  
          return uploadSingleInitiationResponse;
      }
focal_method.class_method_signature: UploadDownloadRestController.initiateUploadSingle(@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
focal_method.full_signature: @RequestMapping(value = "/upload/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_UPLOAD_POST) public UploadSingleInitiationResponse initiateUploadSingle(@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
focal_method.identifier: initiateUploadSingle
focal_method.invocations: initiateUploadSingle asList getSourceBusinessObjectData getTargetBusinessObjectData getBusinessObjectDataKey asList processBusinessObjectDataNotificationEventAsync getStatus getStorageUnits processStorageUnitNotificationEventAsync getName getStorage getStorageUnitStatus
focal_method.modifiers: @RequestMapping(value = "/upload/single/initiation", method = RequestMethod.POST, consumes = {"application/xml", "application/json"}) @Secured(SecurityFunctions.FN_UPLOAD_POST) public
focal_method.parameters: (@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)
focal_method.return: UploadSingleInitiationResponse
focal_method.signature: UploadSingleInitiationResponse initiateUploadSingle(@RequestBody UploadSingleInitiationRequest uploadSingleInitiationRequest)