Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @future (callout=true)
- public static void addContactPicklistPreference(List<String> preferences, String sessionId){
- Schema.DescribeSObjectResult sObjectDescribe = Contact.sObjectType.getDescribe();
- String picklistFieldName = 'Preference__c';
- Picklist_MDT.addPicklistValues(sObjectDescribe, picklistFieldName, artists, sessionId);
- }
- public class Picklist_MDT {
- public static void addPicklistValues(Schema.DescribeSObjectResult sObjectDescribe, String picklistFieldName, List<String> picklistValueNames, String sessionId) {
- MetadataService.MetadataPort service = createService(sessionId);
- ...
- }
- public static MetadataService.MetadataPort createService(String sessionId) {
- MetadataService.MetadataPort service = new MetadataService.MetadataPort();
- service.SessionHeader = new MetadataService.SessionHeader_element();
- service.SessionHeader.sessionId = sessionId;
- return service;
- }
- }
- <apex:page>
- Start_Of_Session_Id{!$Api.Session_ID}End_Of_Session_Id
- </apex:page>
- public static MetadataService.MetadataPort createService()
- {
- MetadataService.MetadataPort service = new MetadataService.MetadataPort();
- service.SessionHeader = new MetadataService.SessionHeader_element();
- //service.SessionHeader.sessionId = UserInfo.getSessionId();
- service.SessionHeader.sessionId = Utils.getSessionIdFromVFPage(Page.SessionId);
- return service;
- }
- global class Utils {
- global static String getSessionIdFromVFPage(PageReference visualforcePage){
- String content = visualforcePage.getContent().toString();
- Integer s = content.indexOf('Start_Of_Session_Id') + 'Start_Of_Session_Id'.length(),
- e = content.indexOf('End_Of_Session_Id');
- return content.substring(s, e);
- }
- }
Add Comment
Please, Sign In to add comment