private void reuseExistingExportMask(Map<URI,Integer> blockObjectMap,StorageSystem vplexSystem,ExportGroup exportGroup,URI varrayUri,List<ExportMask> exportMasksToUpdateOnDevice,Map<URI,List<URI>> exportMasksToUpdateOnDeviceWithStoragePorts,List<Initiator> inits,boolean allPortsFromMaskMatchForVarray,ExportMask viprExportMask,String opId){
  exportMasksToUpdateOnDevice.add(viprExportMask);
  exportGroup.addExportMask(viprExportMask.getId());
  _dbClient.updateObject(exportGroup);
  ExportPathParams pathParams=_blockScheduler.calculateExportPathParamForVolumes(blockObjectMap.keySet(),exportGroup.getNumPaths(),vplexSystem.getId(),exportGroup.getId());
  if (exportGroup.getType() != null) {
    pathParams.setExportGroupType(exportGroup.getType());
  }
  if (!allPortsFromMaskMatchForVarray) {
    Map<URI,List<URI>> assignments=_blockScheduler.assignStoragePorts(vplexSystem,exportGroup,inits,viprExportMask.getZoningMap(),pathParams,null,_networkDeviceController,varrayUri,opId);
    if (assignments != null && !assignments.isEmpty()) {
      viprExportMask=ExportUtils.updateZoningMap(_dbClient,viprExportMask,assignments,exportMasksToUpdateOnDeviceWithStoragePorts);
    }
  }
}

private void reuseExistingExportMask ( Map < URI , Integer > blockObjectMap , StorageSystem vplexSystem , ExportGroup exportGroup , URI varrayUri , List < ExportMask > exportMasksToUpdateOnDevice , Map < URI , List < URI > > exportMasksToUpdateOnDeviceWithStoragePorts , List < Initiator > inits , boolean allPortsFromMaskMatchForVarray , ExportMask viprExportMask , String opId ) { exportMasksToUpdateOnDevice . add ( viprExportMask ) ; exportGroup . addExportMask ( viprExportMask . getId ( ) ) ; _dbClient . updateObject ( exportGroup ) ; ExportPathParams pathParams = _blockScheduler . calculateExportPathParamForVolumes ( blockObjectMap . keySet ( ) , exportGroup . getNumPaths ( ) , vplexSystem . getId ( ) , exportGroup . getId ( ) ) ; if ( exportGroup . getType ( ) != null ) { pathParams . setExportGroupType ( exportGroup . getType ( ) ) ; } if ( ! allPortsFromMaskMatchForVarray ) { Map < URI , List < URI > > assignments = _blockScheduler . assignStoragePorts ( vplexSystem , exportGroup , inits , viprExportMask . getZoningMap ( ) , pathParams , null , _networkDeviceController , varrayUri , opId ) ; if ( assignments != null && ! assignments . isEmpty ( ) ) { viprExportMask = ExportUtils . updateZoningMap ( _dbClient , viprExportMask , assignments , exportMasksToUpdateOnDeviceWithStoragePorts ) ; } } }
handles re - using an existing vipr exportmask for a volume export process .
