Search in sources :

Example 6 with UserStoragePreference

use of org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference in project airavata by apache.

the class UsrResourceProfileImpl method getAllUserResourceProfiles.

@Override
public List<UserResourceProfile> getAllUserResourceProfiles() throws AppCatalogException {
    try {
        List<UserResourceProfile> gatewayResourceProfileList = new ArrayList<UserResourceProfile>();
        UserResourceProfileResource profileResource = new UserResourceProfileResource();
        List<AppCatalogResource> resourceList = profileResource.getAll();
        if (resourceList != null && !resourceList.isEmpty()) {
            for (AppCatalogResource resource : resourceList) {
                UserResourceProfileResource userProfileResource = (UserResourceProfileResource) resource;
                List<UserComputeResourcePreference> computeResourcePreferences = getAllUserComputeResourcePreferences(userProfileResource.getUserId(), userProfileResource.getGatewayID());
                List<UserStoragePreference> dataStoragePreferences = getAllUserStoragePreferences(userProfileResource.getUserId(), userProfileResource.getGatewayID());
                UserResourceProfile gatewayResourceProfile = AppCatalogThriftConversion.getUserResourceProfile(userProfileResource, computeResourcePreferences, dataStoragePreferences);
                gatewayResourceProfileList.add(gatewayResourceProfile);
            }
        }
        return gatewayResourceProfileList;
    } catch (Exception e) {
        logger.error("Error while retrieving user resource profiles...", e);
        throw new AppCatalogException(e);
    }
}
Also used : AppCatalogException(org.apache.airavata.registry.cpi.AppCatalogException) UserComputeResourcePreference(org.apache.airavata.model.appcatalog.userresourceprofile.UserComputeResourcePreference) ArrayList(java.util.ArrayList) UserStoragePreference(org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference) UserResourceProfile(org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile) AppCatalogException(org.apache.airavata.registry.cpi.AppCatalogException)

Example 7 with UserStoragePreference

use of org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference in project airavata by apache.

the class UsrResourceProfileImpl method getUserResourceProfile.

@Override
public UserResourceProfile getUserResourceProfile(String userId, String gatewayId) throws AppCatalogException {
    try {
        UserResourceProfileResource resource = new UserResourceProfileResource();
        CompositeIdentifier ids = new CompositeIdentifier(userId, gatewayId);
        UserResourceProfileResource uResource = (UserResourceProfileResource) resource.get(ids);
        UserComputeHostPreferenceResource prefResource = new UserComputeHostPreferenceResource();
        List<AppCatalogResource> usercomputePrefList = prefResource.get(AppCatAbstractResource.UserComputeResourcePreferenceConstants.USER_ID, ids);
        List<UserComputeResourcePreference> userComputeResourcePreferences = AppCatalogThriftConversion.getUserComputeResourcePreferences(usercomputePrefList);
        List<UserStoragePreference> dataStoragePreferences = getAllUserStoragePreferences(userId, gatewayId);
        if (uResource != null) {
            return AppCatalogThriftConversion.getUserResourceProfile(uResource, userComputeResourcePreferences, dataStoragePreferences);
        } else {
            return AppCatalogThriftConversion.createNullUserResourceProfile(userId, gatewayId);
        }
    } catch (Exception e) {
        logger.error("Error while retrieving user resource profile...", e);
        throw new AppCatalogException(e);
    }
}
Also used : AppCatalogException(org.apache.airavata.registry.cpi.AppCatalogException) CompositeIdentifier(org.apache.airavata.registry.cpi.CompositeIdentifier) UserComputeResourcePreference(org.apache.airavata.model.appcatalog.userresourceprofile.UserComputeResourcePreference) UserStoragePreference(org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference) AppCatalogException(org.apache.airavata.registry.cpi.AppCatalogException)

Example 8 with UserStoragePreference

use of org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference in project airavata by apache.

the class UsrResourceProfileImpl method addUserResourceProfile.

@Override
public String addUserResourceProfile(org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile userResourceProfile) throws AppCatalogException {
    try {
        UserResourceProfileResource profileResource = new UserResourceProfileResource();
        if (!userResourceProfile.getUserId().equals("")) {
            profileResource.setUserId(userResourceProfile.getUserId());
        }
        if (!userResourceProfile.getGatewayID().equals("")) {
            profileResource.setGatewayID(userResourceProfile.getGatewayID());
        }
        if (userResourceProfile.getCredentialStoreToken() != null) {
            profileResource.setCredentialStoreToken(userResourceProfile.getCredentialStoreToken());
        }
        if (userResourceProfile.getIdentityServerTenant() != null) {
            profileResource.setIdentityServerTenant(userResourceProfile.getIdentityServerTenant());
        }
        if (userResourceProfile.getIdentityServerPwdCredToken() != null) {
            profileResource.setIdentityServerPwdCredToken(userResourceProfile.getIdentityServerPwdCredToken());
        }
        profileResource.setUserId(userResourceProfile.getUserId());
        profileResource.setGatewayID(userResourceProfile.getGatewayID());
        profileResource.save();
        List<UserComputeResourcePreference> userComputeResourcePreferences = userResourceProfile.getUserComputeResourcePreferences();
        if (userComputeResourcePreferences != null && !userComputeResourcePreferences.isEmpty()) {
            for (UserComputeResourcePreference preference : userComputeResourcePreferences) {
                UserComputeHostPreferenceResource resource = new UserComputeHostPreferenceResource();
                resource.setUserResourceProfileResource(profileResource);
                resource.setResourceId(preference.getComputeResourceId());
                ComputeResourceResource computeHostResource = new ComputeResourceResource();
                resource.setComputeHostResource((ComputeResourceResource) computeHostResource.get(preference.getComputeResourceId()));
                resource.setGatewayId(profileResource.getGatewayID());
                resource.setUserId(profileResource.getUserId());
                resource.setLoginUserName(preference.getLoginUserName());
                resource.setResourceCSToken(preference.getResourceSpecificCredentialStoreToken());
                resource.setBatchQueue(preference.getPreferredBatchQueue());
                resource.setProjectNumber(preference.getAllocationProjectNumber());
                resource.setScratchLocation(preference.getScratchLocation());
                resource.setQualityOfService(preference.getQualityOfService());
                resource.setReservation(preference.getReservation());
                if (preference.getReservationStartTime() > 0) {
                    resource.setReservationStartTime(AiravataUtils.getTime(preference.getReservationStartTime()));
                }
                if (preference.getReservationEndTime() > 0) {
                    resource.setReservationEndTime(AiravataUtils.getTime(preference.getReservationEndTime()));
                }
                resource.setValidated(preference.isValidated());
                resource.save();
            }
        }
        List<UserStoragePreference> dataStoragePreferences = userResourceProfile.getUserStoragePreferences();
        if (dataStoragePreferences != null && !dataStoragePreferences.isEmpty()) {
            for (UserStoragePreference storagePreference : dataStoragePreferences) {
                UserStoragePreferenceResource resource = new UserStoragePreferenceResource();
                resource.setStorageResourceId(storagePreference.getStorageResourceId());
                resource.setGatewayId(profileResource.getGatewayID());
                resource.setUserId(profileResource.getUserId());
                resource.setFsRootLocation(storagePreference.getFileSystemRootLocation());
                resource.setLoginUserName(storagePreference.getLoginUserName());
                resource.setResourceCSToken(storagePreference.getResourceSpecificCredentialStoreToken());
                resource.setUserResourceProfileResource(profileResource);
                resource.save();
            }
        }
        return profileResource.getGatewayID();
    } catch (Exception e) {
        logger.error("Error while saving gateway profile...", e);
        throw new AppCatalogException(e);
    }
}
Also used : AppCatalogException(org.apache.airavata.registry.cpi.AppCatalogException) UserComputeResourcePreference(org.apache.airavata.model.appcatalog.userresourceprofile.UserComputeResourcePreference) UserStoragePreference(org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference) AppCatalogException(org.apache.airavata.registry.cpi.AppCatalogException)

Example 9 with UserStoragePreference

use of org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference in project airavata by apache.

the class AppCatalogThriftConversion method getUserDataStoragePreference.

public static UserStoragePreference getUserDataStoragePreference(UserStoragePreferenceResource resource) {
    UserStoragePreference preference = new UserStoragePreference();
    preference.setStorageResourceId(resource.getStorageResourceId());
    preference.setFileSystemRootLocation(resource.getFsRootLocation());
    preference.setLoginUserName(resource.getLoginUserName());
    preference.setResourceSpecificCredentialStoreToken(resource.getResourceCSToken());
    return preference;
}
Also used : UserStoragePreference(org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference)

Aggregations

UserStoragePreference (org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference)9 UserComputeResourcePreference (org.apache.airavata.model.appcatalog.userresourceprofile.UserComputeResourcePreference)5 AppCatalogException (org.apache.airavata.registry.cpi.AppCatalogException)4 UserResourceProfile (org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile)3 RegistryServiceException (org.apache.airavata.registry.api.exception.RegistryServiceException)3 ArrayList (java.util.ArrayList)2 CompositeIdentifier (org.apache.airavata.registry.cpi.CompositeIdentifier)2 AiravataException (org.apache.airavata.common.exception.AiravataException)1 ApplicationSettingsException (org.apache.airavata.common.exception.ApplicationSettingsException)1 CredentialStoreException (org.apache.airavata.credential.store.exception.CredentialStoreException)1 ComputeResourceDescription (org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription)1 RegistryService (org.apache.airavata.registry.api.RegistryService)1 ComputeResource (org.apache.airavata.registry.cpi.ComputeResource)1 UsrResourceProfile (org.apache.airavata.registry.cpi.UsrResourceProfile)1 SecurityCheck (org.apache.airavata.service.security.interceptor.SecurityCheck)1 SharingRegistryService (org.apache.airavata.sharing.registry.service.cpi.SharingRegistryService)1 TException (org.apache.thrift.TException)1 Test (org.junit.Test)1