Upstream FirstRunActivity and friends.
[chromium-blink-merge.git] / gin / context_holder.cc
blob241b25622c5b597245d9ed0002b1902420915e55
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "gin/public/context_holder.h"
7 #include "base/logging.h"
8 #include "gin/per_context_data.h"
10 namespace gin {
12 ContextHolder::ContextHolder(v8::Isolate* isolate)
13 : isolate_(isolate) {
16 ContextHolder::~ContextHolder() {
17 // PerContextData needs to be destroyed before the context.
18 data_.reset();
21 void ContextHolder::SetContext(v8::Handle<v8::Context> context) {
22 DCHECK(context_.IsEmpty());
23 context_.Reset(isolate_, context);
24 data_.reset(new PerContextData(this, context));
27 } // namespace gin