@Override public ChapInfo getChapInfo(VolumeInfo volumeInfo) { long accountId = volumeInfo.getAccountId(); AccountDetailVO accountDetail = _accountDetailsDao.findDetail(accountId, SolidFireUtil.CHAP_INITIATOR_USERNAME); String chapInitiatorUsername = accountDetail.getValue(); accountDetail = _accountDetailsDao.findDetail(accountId, SolidFireUtil.CHAP_INITIATOR_SECRET); String chapInitiatorSecret = accountDetail.getValue(); StoragePoolDetailVO storagePoolDetail = _storagePoolDetailsDao.findDetail( volumeInfo.getPoolId(), SolidFireUtil.USE_MUTUAL_CHAP_FOR_VMWARE); boolean useMutualChapForVMware = new Boolean(storagePoolDetail.getValue()); String chapTargetUsername = null; String chapTargetSecret = null; if (useMutualChapForVMware) { accountDetail = _accountDetailsDao.findDetail(accountId, SolidFireUtil.CHAP_TARGET_USERNAME); chapTargetUsername = accountDetail.getValue(); accountDetail = _accountDetailsDao.findDetail(accountId, SolidFireUtil.CHAP_TARGET_SECRET); chapTargetSecret = accountDetail.getValue(); } return new ChapInfoImpl( chapInitiatorUsername, chapInitiatorSecret, chapTargetUsername, chapTargetSecret); }
private void deleteSolidFireVolume(VolumeInfo volumeInfo, SolidFireConnection sfConnection) { Long storagePoolId = volumeInfo.getPoolId(); if (storagePoolId == null) { return; // this volume was never assigned to a storage pool, so no SAN volume should exist for // it } String mVip = sfConnection.getManagementVip(); int mPort = sfConnection.getManagementPort(); String clusterAdminUsername = sfConnection.getClusterAdminUsername(); String clusterAdminPassword = sfConnection.getClusterAdminPassword(); long sfVolumeId = Long.parseLong(volumeInfo.getFolder()); SolidFireUtil.deleteSolidFireVolume( mVip, mPort, clusterAdminUsername, clusterAdminPassword, sfVolumeId); }