@namespace("org.apache.hadoop.yarn") protocol AMRMProtocol { import idl "yarn/yarn-api/src/main/avro/yarn-types.genavro"; // Scheduler record Priority { int priority; } record ResourceRequest { Priority priority; string hostName; Resource capability; int numContainers; } record AMResponse { boolean reboot; int responseId; array containers; } void registerApplicationMaster(ApplicationMaster applicationMaster) throws YarnRemoteException; void finishApplicationMaster(ApplicationMaster applicationMaster) throws YarnRemoteException; AMResponse allocate(ApplicationStatus status, array ask, array release) throws YarnRemoteException; }