private String createWorkflowStepForRelinkNativeTargets(Workflow workflow,BlockSnapshotSession tgtSnapSession,List<URI> snapshotURIs,String waitFor,Workflow.Method rollbackMethod){
  URI parentSystemURI=tgtSnapSession.getStorageController();
  StorageSystem parentSystem=getDataObject(StorageSystem.class,parentSystemURI,_dbClient);
  Workflow.Method relinkMethod=new Workflow.Method(RELINK_SNAPSHOT_SESSION_TARGETS_METHOD_NAME,parentSystemURI,tgtSnapSession.getId(),snapshotURIs,Boolean.FALSE);
  workflow.createStep(RELINK_SNAPSHOT_SESSION_TARGET_STEP,String.format("Relink VPLEX backend snapshot session targets %s to session %s",snapshotURIs,tgtSnapSession.getId()),waitFor,parentSystemURI,parentSystem.getSystemType(),BlockDeviceController.class,relinkMethod,rollbackMethod,null);
  _log.info("Created workflow step to relink VPLEX backend snapshot session targets {} to session {}",snapshotURIs,tgtSnapSession.getId());
  return RELINK_SNAPSHOT_SESSION_TARGET_STEP;
}

private String createWorkflowStepForRelinkNativeTargets ( Workflow workflow , BlockSnapshotSession tgtSnapSession , List < URI > snapshotURIs , String waitFor , Workflow . Method rollbackMethod ) { URI parentSystemURI = tgtSnapSession . getStorageController ( ) ; StorageSystem parentSystem = getDataObject ( StorageSystem . class , parentSystemURI , _dbClient ) ; Workflow . Method relinkMethod = new Workflow . Method ( RELINK_SNAPSHOT_SESSION_TARGETS_METHOD_NAME , parentSystemURI , tgtSnapSession . getId ( ) , snapshotURIs , Boolean . FALSE ) ; workflow . createStep ( RELINK_SNAPSHOT_SESSION_TARGET_STEP , String . format ( "Relink VPLEX backend snapshot session targets %s to session %s" , snapshotURIs , tgtSnapSession . getId ( ) ) , waitFor , parentSystemURI , parentSystem . getSystemType ( ) , BlockDeviceController . class , relinkMethod , rollbackMethod , null ) ; _log . info ( "Created workflow step to relink VPLEX backend snapshot session targets {} to session {}" , snapshotURIs , tgtSnapSession . getId ( ) ) ; return RELINK_SNAPSHOT_SESSION_TARGET_STEP ; }
create a step in the passed workflow to call the block controller to natively relink the passed linked targets to the passed target snapshot session .
