Implemented `status` method in `ComposingContainerizer`. This method will be used by the agent to retrieve `ContainerStatus` from the `Containerizer`, that was responsible for launching the container.
Review: https://reviews.apache.org/r/43565/ Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/74c50365 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/74c50365 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/74c50365 Branch: refs/heads/master Commit: 74c503658489293ed78c8abc493c36472431303f Parents: d208662 Author: Avinash sridharan <[email protected]> Authored: Tue Feb 16 15:50:13 2016 -0800 Committer: Jie Yu <[email protected]> Committed: Tue Feb 16 15:50:13 2016 -0800 ---------------------------------------------------------------------- src/slave/containerizer/composing.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/74c50365/src/slave/containerizer/composing.cpp ---------------------------------------------------------------------- diff --git a/src/slave/containerizer/composing.cpp b/src/slave/containerizer/composing.cpp index f0a7bba..15d059f 100644 --- a/src/slave/containerizer/composing.cpp +++ b/src/slave/containerizer/composing.cpp @@ -81,6 +81,9 @@ public: Future<ResourceStatistics> usage( const ContainerID& containerId); + Future<ContainerStatus> status( + const ContainerID& containerId); + Future<containerizer::Termination> wait( const ContainerID& containerId); @@ -221,6 +224,13 @@ Future<ResourceStatistics> ComposingContainerizer::usage( } +Future<ContainerStatus> ComposingContainerizer::status( + const ContainerID& containerId) +{ + return dispatch(process, &ComposingContainerizerProcess::status, containerId); +} + + Future<containerizer::Termination> ComposingContainerizer::wait( const ContainerID& containerId) { @@ -496,6 +506,17 @@ Future<ResourceStatistics> ComposingContainerizerProcess::usage( } +Future<ContainerStatus> ComposingContainerizerProcess::status( + const ContainerID& containerId) +{ + if (!containers_.contains(containerId)) { + return Failure("Container " + containerId.value() + " not found"); + } + + return containers_[containerId]->containerizer->status(containerId); +} + + Future<containerizer::Termination> ComposingContainerizerProcess::wait( const ContainerID& containerId) {
