public with sharing class ExternalServiceConfigUtil { @AuraEnabled public static String externalStorageDisconnectAdmin(String externalStorageType) { try { // if( !Schema.sObjectType.HIC_FilesME__External_Service_Configuration__c.isDeletable() // || !Schema.sObjectType.HIC_FilesME__External_Service_Configuration__c.fields.HIC_FilesME__Is_Admin_level_Credentials__c.isAccessible() // || !Schema.sObjectType.HIC_FilesME__External_Service_Configuration__c.fields.HIC_FilesME__External_Storage_Type__c.isAccessible() ){ // throw new AuraHandledException('You don\'t have sufficient permission'); // } // List externalStorageList = [ // SELECT Id FROM HIC_FilesME__External_Service_Configuration__c // WHERE HIC_FilesME__Is_Admin_level_Credentials__c = true // AND HIC_FilesME__External_Storage_Type__c = :externalStorageType // WITH USER_MODE LIMIT 1 // ]; System.debug('externalStorageType:-> '+ externalStorageType); // System.debug('userId:-> '+ userId); List externalStorageList = [ SELECT Id FROM HIC_FilesME__External_Token__c WHERE HIC_FilesME__Is_Admin_level_Credentials__c = true AND HIC_FilesME__Provider__c = :externalStorageType WITH USER_MODE LIMIT 1 ]; System.debug('externalStorageList:-> '+ externalStorageList); if (!externalStorageList.isEmpty()) { delete externalStorageList; } return 'deleted'; } catch (Exception e) { // throw new AuraHandledException(e.getMessage()); FME_Logger.error(e.getMessage(), 'ExternalServiceConfigUtil' + e.getLineNumber(), 'externalStorageDisconnectAdmin'); } finally{ FME_Logger.saveLog(); } return null; } @AuraEnabled public static String externalStoragelogoutUser(String externalStorageType, Boolean isAdminLevel ) { try { String userId = SalesforceEnvironmentUtil.getUserId(); if (userId == null) { // throw new AuraHandledException('User ID must be provided for logout.'); return null; } // if (!Schema.sObjectType.HIC_FilesME__External_Service_Configuration__c.isDeletable() // || !Schema.sObjectType.HIC_FilesME__External_Service_Configuration__c.fields.HIC_FilesME__Is_Admin_level_Credentials__c.isAccessible() // || !Schema.sObjectType.HIC_FilesME__External_Service_Configuration__c.fields.HIC_FilesME__External_Storage_Type__c.isAccessible() // || !Schema.sObjectType.HIC_FilesME__External_Service_Configuration__c.fields.HIC_FilesME__User__c.isAccessible()) { // return null; // } System.debug('externalStorageType:-> '+ externalStorageType); System.debug('userId:-> '+ userId); // List externalStorageLogoutList = [ // SELECT Id FROM HIC_FilesME__External_Service_Configuration__c // WHERE HIC_FilesME__Is_Admin_level_Credentials__c = false // AND HIC_FilesME__External_Storage_Type__c = :externalStorageType // AND HIC_FilesME__User__c = :userId // WITH USER_MODE LIMIT 1 // ]; List externalStorageLogoutList = [ SELECT Id FROM HIC_FilesME__External_Token__c WHERE HIC_FilesME__Is_Admin_level_Credentials__c = :isAdminLevel AND HIC_FilesME__Provider__c = :externalStorageType AND HIC_FilesME__User__c = :userId WITH USER_MODE LIMIT 1 ]; if (!externalStorageLogoutList.isEmpty()) { delete externalStorageLogoutList; return 'deleted'; } else { return 'delete failed'; } } catch (Exception e) { // throw new AuraHandledException(e.getMessage()); FME_Logger.error(e.getMessage(), 'ExternalServiceConfigUtil' + e.getLineNumber(), 'getAllSets'); } finally{ FME_Logger.saveLog(); } return null; } }