This class allows you to call Apex functions as a user different from the current context.
The main use case is to run code on behalf of a user before she logs in, or to run code as an administrator

Function

global abstract class Function {
global abstract String execute(String param);
}
Class which must be extended in order to run code remotely.