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"
12 ContextHolder::ContextHolder(v8::Isolate
* isolate
)
16 ContextHolder::~ContextHolder() {
17 // PerContextData needs to be destroyed before the context.
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
));