Skip to content

Instantly share code, notes, and snippets.

@nisar799
Last active September 27, 2015 13:38
Show Gist options
  • Save nisar799/c03c624377ce86cb3fd2 to your computer and use it in GitHub Desktop.
Save nisar799/c03c624377ce86cb3fd2 to your computer and use it in GitHub Desktop.
Getting Default New User License of customer portal in Aped code.
public String getDefaultNewUserLicense(){
String siteName = 'YOUR_SITE_NAME'; // Your Site Name
String portalName = '';
String defaultUserLicenseName = '';
String profileFullName = '';
// Setup Connection
MetadataService.MetadataPort service = new MetadataService.MetadataPort();
service.SessionHeader = new MetadataService.SessionHeader_element();
service.SessionHeader.sessionId = UserInfo.getSessionId();
// Reading Site Metadata to get portal name
MetadataService.IReadResult resCustomSite = service.readMetaData('CustomSite', new String[] { siteName} );
MetadataService.Metadata[] infoCustomSite = resCustomSite.getRecords();
for(MetadataService.Metadata md : infoCustomSite){
MetadataService.CustomSite siteInfo = (MetadataService.CustomSite) md;
portalName = siteInfo.portal;
}
// Reading Portal Metadata to get profile name of portal
MetadataService.IReadResult res = service.readMetaData('Portal', new String[]{portalName});
MetadataService.Metadata[] info = res.getRecords();
for(MetadataService.Metadata md : info){
MetadataService.Portal pt = (MetadataService.Portal) md;
profileFullName = pt.selfRegUserDefaultProfile;
}
// Reading Profile Metadata to get Default New User License
MetadataService.IReadResult resProfile = service.readMetaData('Profile', new String[]{profileFullName});
MetadataService.Metadata[] infoProfile = resProfile.getRecords();
for(MetadataService.Metadata md : infoProfile){
MetadataService.Profile pr = (MetadataService.Profile) md;
defaultUserLicenseName = pr.userLicense;
}
System.debug('### Defualt New User License = '+defaultUserLicenseName);
return defaultUserLicenseName;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment