public void moveVolumesFromOneStorageGroupToAnother(StorageSystem storage,CIMObjectPath sourceMaskingGroup,CIMObjectPath targetMaskingGroup,List<URI> volumeURIs,SmisJob job) throws Exception {
  Set<String> volumeDeviceIds=new HashSet<String>();
  for (  URI volURI : volumeURIs) {
    Volume volume=_dbClient.queryObject(Volume.class,volURI);
    volumeDeviceIds.add(volume.getNativeId());
  }
  CIMArgument[] inArgs=getMoveVolumesBetweenMaskingGroupInputArguments(storage,sourceMaskingGroup,targetMaskingGroup,volumeDeviceIds);
  CIMArgument[] outArgs=new CIMArgument[1];
  invokeMethodSynchronously(storage,_cimPath.getControllerConfigSvcPath(storage),"EMCMoveMembers",inArgs,outArgs,job);
}

public void moveVolumesFromOneStorageGroupToAnother ( StorageSystem storage , CIMObjectPath sourceMaskingGroup , CIMObjectPath targetMaskingGroup , List < URI > volumeURIs , SmisJob job ) throws Exception { Set < String > volumeDeviceIds = new HashSet < String > ( ) ; for ( URI volURI : volumeURIs ) { Volume volume = _dbClient . queryObject ( Volume . class , volURI ) ; volumeDeviceIds . add ( volume . getNativeId ( ) ) ; } CIMArgument [ ] inArgs = getMoveVolumesBetweenMaskingGroupInputArguments ( storage , sourceMaskingGroup , targetMaskingGroup , volumeDeviceIds ) ; CIMArgument [ ] outArgs = new CIMArgument [ 1 ] ; invokeMethodSynchronously ( storage , _cimPath . getControllerConfigSvcPath ( storage ) , "EMCMoveMembers" , inArgs , outArgs , job ) ; }
move volumes from one storage group to another . provider from v8 . 0 . 3 supports movemembers for v3 array . it is a non - disruptive io call . without disrupting the host ' s ability to view the volumes , at least one of the following conditions must be met : - each storage group must be a child of the same parent storage group , and the parent group must be associated with a masking view . - each storage group must be associated with a masking view , and both masking views must contain a common initiator group and a common port group . in this must both contain the same set of ports , or the target port group can contain a superset of the ports in the source port group . - the source storage group is not in a masking view .
