private UpgradePack parseServiceUpgradePack(UpgradePack parent, File serviceFile) throws AmbariException {
    UpgradePack pack = null;
    try {
      pack = unmarshaller.unmarshal(UpgradePack.class, serviceFile);
    }
    catch (Exception e) {
      throw new AmbariException("Unable to parse service upgrade file at location: " + serviceFile.getAbsolutePath(), e);
    }

    return parseServiceUpgradePack(parent, pack);
  }
Parses the service specific upgrade file and merges the none order elements
(prerequisite check and processing sections).
ambari-server/src/main/java/org/apache/ambari/server/stack/StackModule.java