// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "mojo/public/utility/environment.h" #include "mojo/public/utility/bindings_support_impl.h" #include "mojo/public/utility/run_loop.h" namespace mojo { namespace utility { Environment::Environment() : bindings_support_(NULL) { RunLoop::SetUp(); internal::BindingsSupportImpl::SetUp(); bindings_support_ = new internal::BindingsSupportImpl; BindingsSupport::Set(bindings_support_); } Environment::~Environment() { // Allow for someone to have replaced BindingsSupport. if (BindingsSupport::Get() == bindings_support_) BindingsSupport::Set(NULL); delete bindings_support_; internal::BindingsSupportImpl::TearDown(); RunLoop::TearDown(); } } // namespace utility } // namespace mojo