Skip to content

Instantly share code, notes, and snippets.

View afawcett's full-sized avatar

Andrew Fawcett afawcett

View GitHub Profile
@afawcett
afawcett / MetadataService.cls
Last active January 1, 2016 06:59
Spring'14 Metadata API MetadataService.cls and MetadataServiceExamples.cls
//Generated by wsdl2apex
public class MetadataService {
public class listMetadataResponse_element {
public MetadataService.FileProperties[] result;
private String[] result_type_info = new String[]{'result','http://soap.sforce.com/2006/04/metadata',null,'0','-1','false'};
private String[] apex_schema_type_info = new String[]{'http://soap.sforce.com/2006/04/metadata','true','false'};
private String[] field_order_type_info = new String[]{'result'};
}
public class FieldOverride {
@afawcett
afawcett / gist:8090245
Created December 23, 2013 00:41
Apex script for parsing and updating generated WSDL2Apex from Metadata API WSDL, uses Tooling REST API to dynamically create the modified code.
public with sharing class MetadataServicePatcher {
// Perhaps parse these from the WSDL in the future
private static final Map<String, String> METADATA_TYPES =
new Map<String, String> {
'CustomSite' => 'Metadata',
'InstalledPackage' => 'Metadata',
'CustomField' => 'Metadata',
'FieldSet' => 'Metadata',
'PicklistValue' => 'Metadata',
public with sharing class AssertCallback {
private static Map<Type, IAssertCallback> callbacks = new Map<Type, IAssertCallback>();
public interface IAssertCallback
{
void assert(String location, Object state);
}
public static void assert(Type stateType, String location, Object state)
@afawcett
afawcett / TestA.cls
Created May 5, 2013 14:47
Reproduction of Salesforce code coverage bug.
public class TestA {
public TestA()
{
}
public class TestB
{
public Integer doSomething()
{
Integer x = 1;
global class myClass
{
global class wrapperClass
{
public String name {get; set;}
public Account account {get; set;}
public wrapperClass()
{
account = new Account();
public with sharing class SessionController {
public List<Session__c> lstSessions {get;set;}
public SessionController()
{
lstSessions = [select Id, Session_Status__c, GL_Department__c, Quantity__c, Unit_Cost__c from Session__c];
}
public PageReference createNewSession()
@afawcett
afawcett / SomeClassA.cls
Created February 2, 2013 16:24
Sample code used to test a prototype Apex Analysis tool using the new Spring'13 Tooling API.
public class SomeClassA
{
public static void someMethod()
{
SomeClassB.someMethodB();
someOtherMethod();
}
public static void someOtherMethod()
{
@afawcett
afawcett / gist:4112895
Created November 19, 2012 19:00
Sample Export from SObjectDataLoader
{
"RecordSetBundles": [
{
"Records": [
{
"attributes": {
"type": "ObjectA__c",
"url": "/services/data/v26.0/sobjects/ObjectA__c/a00d0000007kUmsAAE"
},
"CreatedDate": "2012-11-19T18:32:50.000+0000",
@afawcett
afawcett / XAVWebServices.wsdl
Created November 5, 2012 09:07
Apex Friendly Version of UPS XAV Service
<?xml version="1.0" encoding="UTF-8"?>
<!-- UPS XAV Service WSDL Release Date Dec 29, 2007 -->
<!-- Copyright 2007-2008 United Parcel Service of America, Inc. All rights reserved. -->
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:error="http://www.ups.com/XMLSchema/XOLTWS/Error/v1.1" xmlns:upss="http://www.ups.com/XMLSchema/XOLTWS/UPSS/v1.0" xmlns:xav="http://www.ups.com/XMLSchema/XOLTWS/xav/v1.0" xmlns:tns="http://www.ups.com/WSDL/XOLTWS/XAV/v1.0" targetNamespace="http://www.ups.com/WSDL/XOLTWS/XAV/v1.0">
<wsdl:types>
<!-- This schema defines the UPS Security header used for authorization purposes -->
<xsd:schema targetNamespace="http://www.ups.com/XMLSchema/XOLTWS/UPSS/v1.0" xmlns:upss="http://www.ups.com/XMLSchema/XOLTWS/UPSS/v1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xsd:element name="UPSSecurity">
<xsd:complexType>
@afawcett
afawcett / build.xml
Created November 16, 2014 19:28
ev3force build script...
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project name="ev3" default="clean" basedir=".">
<!-- DEVELOPMENT SECTION -->
<property name="environment" value="EV3" />
<property name="project" value="ev3force"/>
<property name="version" value="0.1"/>
<property name="base.dir" value="." />
<property name="src" location="src"/>
<property name="lib" location="${base.dir}/lib" />