Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -189,8 +189,41 @@ public AccessGroup updateAccessGroup(AccessGroup accessGroup) {

@Override
public AccessGroup getAccessGroup(AccessGroup accessGroup) {
//TODO
return null;
s_logger.info("getAccessGroup: Get export policy");

if (accessGroup == null) {
throw new CloudRuntimeException("getAccessGroup: Invalid accessGroup object - accessGroup is null");
}

// Get PrimaryDataStoreInfo from accessGroup
PrimaryDataStoreInfo primaryDataStoreInfo = accessGroup.getPrimaryDataStoreInfo();
if (primaryDataStoreInfo == null) {
throw new CloudRuntimeException("getAccessGroup: PrimaryDataStoreInfo is null in accessGroup");
}
s_logger.info("getAccessGroup: Get export policy for the storage pool {}", primaryDataStoreInfo.getName());
try {
String authHeader = Utility.generateAuthHeader(storage.getUsername(), storage.getPassword());
// Determine export policy attached to the storage pool
String exportPolicyName = primaryDataStoreInfo.getDetails().get(Constants.EXPORT_POLICY_NAME);
String exportPolicyId = primaryDataStoreInfo.getDetails().get(Constants.EXPORT_POLICY_ID);

try {
ExportPolicy exportPolicy = nasFeignClient.getExportPolicyById(authHeader,exportPolicyId);
if(exportPolicy==null){
s_logger.error("getAccessGroup: Failed to retrieve export policy for export policy");
throw new CloudRuntimeException("getAccessGroup: Failed to retrieve export policy for export policy");
}
accessGroup.setPolicy(exportPolicy);
s_logger.info("getAccessGroup: Successfully fetched export policy '{}'", exportPolicyName);
} catch (Exception e) {
s_logger.error("getAccessGroup: Failed to delete export policy. Exception: {}", e.getMessage(), e);
throw new CloudRuntimeException("Failed to delete export policy: " + e.getMessage(), e);
}
} catch (Exception e) {
s_logger.error("getAccessGroup: Failed to delete export policy. Exception: {}", e.getMessage(), e);
throw new CloudRuntimeException("Failed to delete export policy: " + e.getMessage(), e);
}
return accessGroup;
}

@Override
Expand Down
Loading
Loading