/// <summary>
        /// Initializes a new instance of the ApplicationContainerDetails class.
        /// </summary>
        /// <param name="containerResult">
        /// Result of a REST call, containing details about a container.
        /// </param>
        /// <param name="parentApplicationAttempt">
        /// The parent ApplicationAttemptDetails object to which the container is associated.
        /// </param>
        internal ApplicationContainerDetails(ApplicationContainerGetResult containerResult, ApplicationAttemptDetails parentApplicationAttempt)
        {
            if (containerResult == null)
            {
                throw new ArgumentNullException("containerResult");
            }

            if (parentApplicationAttempt == null)
            {
                throw new ArgumentNullException("parentApplicationAttempt");
            }

            this.ContainerId = containerResult.ContainerId;
            this.NodeId = containerResult.NodeId;
            this.State = containerResult.State;
            this.ExitStatus = containerResult.ExitStatus;
            this.Priority = containerResult.Priority;
            this.DiagnosticInfo = containerResult.DiagnosticInfo;
            this.AllocatedCores = containerResult.AllocatedCores;
            this.AllocatedMemoryInMegabytes = containerResult.AllocatedMemoryInMegabytes;
            this.StartTimeInUtc = Constants.UnixEpoch.AddMilliseconds(containerResult.StartTimeInMillisecondsSinceUnixEpoch);
            this.FinishTimeInUtc = Constants.UnixEpoch.AddMilliseconds(containerResult.FinishTimeInMillisecondsSinceUnixEpoch);

            this.ParentApplicationAttempt = parentApplicationAttempt;
        }
        /// <summary>
        /// Initializes a new instance of the ApplicationContainerList class.
        /// </summary>
        /// <param name="containerListResult">
        /// Result of a REST call, containing list of application containers.
        /// </param>
        /// <param name="parentApplicationAttempt">
        /// The parent ApplicationAttemptDetails object.
        /// </param>
        internal ApplicationContainerList(ApplicationContainerListResult containerListResult, ApplicationAttemptDetails parentApplicationAttempt)
        {
            if (containerListResult == null)
            {
                throw new ArgumentNullException("containerListResult");
            }

            if (parentApplicationAttempt == null)
            {
                throw new ArgumentNullException("parentApplicationAttempt");
            }

            this.Containers = containerListResult.Containers.Select(containerResult => new ApplicationContainerDetails(containerResult, parentApplicationAttempt));
        }
示例#3
0
 /// <inheritdoc />
 public IEnumerable <ApplicationContainerDetails> ListApplicationContainers(ApplicationAttemptDetails applicationAttempt)
 {
     return(this.ListApplicationContainersAsync(applicationAttempt).WaitForResult());
 }
示例#4
0
        /// <inheritdoc />
        public async Task <IEnumerable <ApplicationContainerDetails> > ListApplicationContainersAsync(ApplicationAttemptDetails applicationAttempt)
        {
            var factory = ServiceLocator.Instance.Locate <IHadoopApplicationHistoryRestClientFactory>();
            var applicationHistoryRestClient = factory.Create(this.credentials, this.Context, this.IgnoreSslErrors);
            var containers = await applicationHistoryRestClient.ListApplicationContainersAsync(applicationAttempt);

            return(containers);
        }
 /// <inheritdoc />
 public IEnumerable<ApplicationContainerDetails> ListApplicationContainers(ApplicationAttemptDetails applicationAttempt)
 {
     return this.ListApplicationContainersAsync(applicationAttempt).WaitForResult(this.timeout);
 }
        /// <inheritdoc />
        public async Task<IEnumerable<ApplicationContainerDetails>> ListApplicationContainersAsync(ApplicationAttemptDetails applicationAttempt)
        {
            applicationAttempt.ArgumentNotNull("applicationAttempt");

            return await this.applicationHistoryClient.ListApplicationContainersAsync(applicationAttempt);
        }
        /// <inheritdoc />
        public async Task<IEnumerable<ApplicationContainerDetails>> ListApplicationContainersAsync(ApplicationAttemptDetails applicationAttempt)
        {
            ApplicationContainerListResult containerListResult = await this.readProxy.ListApplicationContainersAsync(applicationAttempt.ParentApplication.ApplicationId, applicationAttempt.ApplicationAttemptId);

            ApplicationContainerList containers = new ApplicationContainerList(containerListResult, applicationAttempt);

            return containers.Containers;
        }
        /// <summary>
        /// Initializes a new instance of the ApplicationContainerDetails class.
        /// </summary>
        /// <param name="containerResult">
        /// Result of a REST call, containing details about a container.
        /// </param>
        /// <param name="parentApplicationAttempt">
        /// The parent ApplicationAttemptDetails object to which the container is associated.
        /// </param>
        internal ApplicationContainerDetails(ApplicationContainerGetResult containerResult, ApplicationAttemptDetails parentApplicationAttempt)
        {
            if (containerResult == null)
            {
                throw new ArgumentNullException("containerResult");
            }

            if (parentApplicationAttempt == null)
            {
                throw new ArgumentNullException("parentApplicationAttempt");
            }

            this.ContainerId                = containerResult.ContainerId;
            this.NodeId                     = containerResult.NodeId;
            this.State                      = containerResult.State;
            this.ExitStatus                 = containerResult.ExitStatus;
            this.Priority                   = containerResult.Priority;
            this.DiagnosticInfo             = containerResult.DiagnosticInfo;
            this.AllocatedCores             = containerResult.AllocatedCores;
            this.AllocatedMemoryInMegabytes = containerResult.AllocatedMemoryInMegabytes;
            this.StartTimeInUtc             = Constants.UnixEpoch.AddMilliseconds(containerResult.StartTimeInMillisecondsSinceUnixEpoch);
            this.FinishTimeInUtc            = Constants.UnixEpoch.AddMilliseconds(containerResult.FinishTimeInMillisecondsSinceUnixEpoch);

            this.ParentApplicationAttempt = parentApplicationAttempt;
        }
        /// <summary>
        /// Initializes a new instance of the ApplicationContainerList class.
        /// </summary>
        /// <param name="containerListResult">
        /// Result of a REST call, containing list of application containers.
        /// </param>
        /// <param name="parentApplicationAttempt">
        /// The parent ApplicationAttemptDetails object.
        /// </param>
        internal ApplicationContainerList(ApplicationContainerListResult containerListResult, ApplicationAttemptDetails parentApplicationAttempt)
        {
            if (containerListResult == null)
            {
                throw new ArgumentNullException("containerListResult");
            }

            if (parentApplicationAttempt == null)
            {
                throw new ArgumentNullException("parentApplicationAttempt");
            }

            this.Containers = containerListResult.Containers.Select(containerResult => new ApplicationContainerDetails(containerResult, parentApplicationAttempt));
        }
        /// <inheritdoc />
        public async Task <IEnumerable <ApplicationContainerDetails> > ListApplicationContainersAsync(ApplicationAttemptDetails applicationAttempt)
        {
            ApplicationContainerListResult containerListResult = await this.readProxy.ListApplicationContainersAsync(applicationAttempt.ParentApplication.ApplicationId, applicationAttempt.ApplicationAttemptId);

            ApplicationContainerList containers = new ApplicationContainerList(containerListResult, applicationAttempt);

            return(containers.Containers);
        }