/// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/>
                public override GetApplicationReportResponse GetApplicationReport(GetApplicationReportRequest
                                                                                  request)
                {
                    this._enclosing.ResetStartFailoverFlag(true);
                    // make sure failover has been triggered
                    NUnit.Framework.Assert.IsTrue(this._enclosing.WaittingForFailOver());
                    // create a fake application report
                    ApplicationReport            report   = this._enclosing.CreateFakeAppReport();
                    GetApplicationReportResponse response = GetApplicationReportResponse.NewInstance(
                        report);

                    return(response);
                }
        /// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/>
        /// <exception cref="System.IO.IOException"/>
        public virtual GetApplicationReportResponse GetApplicationReport(GetApplicationReportRequest
                                                                         request)
        {
            ApplicationId applicationId = request.GetApplicationId();

            try
            {
                GetApplicationReportResponse response = GetApplicationReportResponse.NewInstance(
                    history.GetApplication(applicationId));
                return(response);
            }
            catch (IOException e)
            {
                Log.Error(e.Message, e);
                throw;
            }
        }