Search in sources :

Example 1 with HostFileSystemMountInfo

use of com.vmware.vim25.HostFileSystemMountInfo in project coprhd-controller by CoprHD.

the class MountDatastore method tryExecute.

@Override
protected Void tryExecute() {
    final String dataStoreName = datastore.getName();
    for (HostFileSystemMountInfo mount : new HostStorageAPI(host).getStorageSystem().getFileSystemVolumeInfo().getMountInfo()) {
        if (mount != null) {
            HostFileSystemVolume mountVolume = mount.getVolume();
            if (mountVolume == null) {
                warn("No volume attached to mount : " + mount.getMountInfo().getPath());
                continue;
            }
            if (mount.getVolume() != null && mount.getVolume() instanceof HostVmfsVolume && dataStoreName.equals(mount.getVolume().getName())) {
                HostVmfsVolume volume = (HostVmfsVolume) mountVolume;
                String vmfsUuid = volume.getUuid();
                info("Mounting volume : " + vmfsUuid);
                try {
                    new HostStorageAPI(host).getStorageSystem().mountVmfsVolume(vmfsUuid);
                } catch (RemoteException e) {
                    throw new VMWareException(e);
                }
            }
        }
    }
    return null;
}
Also used : HostVmfsVolume(com.vmware.vim25.HostVmfsVolume) HostFileSystemVolume(com.vmware.vim25.HostFileSystemVolume) RemoteException(java.rmi.RemoteException) HostStorageAPI(com.iwave.ext.vmware.HostStorageAPI) HostFileSystemMountInfo(com.vmware.vim25.HostFileSystemMountInfo) VMWareException(com.iwave.ext.vmware.VMWareException)

Example 2 with HostFileSystemMountInfo

use of com.vmware.vim25.HostFileSystemMountInfo in project coprhd-controller by CoprHD.

the class UnmountVmfsDatastore method tryExecute.

@Override
protected Void tryExecute() {
    final String dataStoreName = datastore.getName();
    for (HostFileSystemMountInfo mount : new HostStorageAPI(host).getStorageSystem().getFileSystemVolumeInfo().getMountInfo()) {
        HostFileSystemVolume mountVolume = mount.getVolume();
        if (mountVolume == null) {
            warn("No volume attached to mount : " + mount.getMountInfo().getPath());
            continue;
        }
        if (mount.getVolume() instanceof HostVmfsVolume && dataStoreName.equals(mount.getVolume().getName())) {
            HostVmfsVolume volume = (HostVmfsVolume) mountVolume;
            String vmfsUuid = volume.getUuid();
            info("Unmounting volume : " + vmfsUuid);
            try {
                new HostStorageAPI(host).getStorageSystem().unmountVmfsVolume(vmfsUuid);
            } catch (RemoteException e) {
                throw new VMWareException(e);
            }
        }
    }
    return null;
}
Also used : HostVmfsVolume(com.vmware.vim25.HostVmfsVolume) HostFileSystemVolume(com.vmware.vim25.HostFileSystemVolume) RemoteException(java.rmi.RemoteException) HostStorageAPI(com.iwave.ext.vmware.HostStorageAPI) HostFileSystemMountInfo(com.vmware.vim25.HostFileSystemMountInfo) VMWareException(com.iwave.ext.vmware.VMWareException)

Aggregations

HostStorageAPI (com.iwave.ext.vmware.HostStorageAPI)2 VMWareException (com.iwave.ext.vmware.VMWareException)2 HostFileSystemMountInfo (com.vmware.vim25.HostFileSystemMountInfo)2 HostFileSystemVolume (com.vmware.vim25.HostFileSystemVolume)2 HostVmfsVolume (com.vmware.vim25.HostVmfsVolume)2 RemoteException (java.rmi.RemoteException)2