public boolean removeProtectionStep(List<URI> volumeURIs,URI newVpoolURI,String stepId){
  WorkflowStepCompleter.stepExecuting(stepId);
  try {
    for (    URI volumeURI : volumeURIs) {
      Volume volume=_dbClient.queryObject(Volume.class,volumeURI);
      if (RPHelper.isVPlexVolume(volume,_dbClient)) {
        VPlexUtil.updateVPlexBackingVolumeVpools(volume,newVpoolURI,_dbClient);
      }
      VirtualPool vpool=_dbClient.queryObject(VirtualPool.class,newVpoolURI);
      _log.info(String.format("Removing protection from Volume [%s] (%s) and moving it to Virtual Pool [%s] (%s)",volume.getLabel(),volume.getId(),vpool.getLabel(),vpool.getId()));
      RPHelper.rollbackProtectionOnVolume(volume,vpool,_dbClient);
    }
    WorkflowStepCompleter.stepSucceded(stepId);
    return true;
  }
 catch (  Exception e) {
    stepFailed(stepId,e,"removeProtection operation failed.");
    return false;
  }
}

public boolean removeProtectionStep ( List < URI > volumeURIs , URI newVpoolURI , String stepId ) { WorkflowStepCompleter . stepExecuting ( stepId ) ; try { for ( URI volumeURI : volumeURIs ) { Volume volume = _dbClient . queryObject ( Volume . class , volumeURI ) ; if ( RPHelper . isVPlexVolume ( volume , _dbClient ) ) { VPlexUtil . updateVPlexBackingVolumeVpools ( volume , newVpoolURI , _dbClient ) ; } VirtualPool vpool = _dbClient . queryObject ( VirtualPool . class , newVpoolURI ) ; _log . info ( String . format ( "Removing protection from Volume [%s] (%s) and moving it to Virtual Pool [%s] (%s)" , volume . getLabel ( ) , volume . getId ( ) , vpool . getLabel ( ) , vpool . getId ( ) ) ) ; RPHelper . rollbackProtectionOnVolume ( volume , vpool , _dbClient ) ; } WorkflowStepCompleter . stepSucceded ( stepId ) ; return true ; } catch ( Exception e ) { stepFailed ( stepId , e , "removeProtection operation failed." ) ; return false ; } }
removes vipr level protection attributes from rp source volumes
