1 // Copyright (c) 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. 4 5 #include "ppapi/cpp/private/ext_crx_file_system_private.h" 6 7 #include "ppapi/c/private/ppb_ext_crx_file_system_private.h" 8 #include "ppapi/cpp/module_impl.h" 9 10 namespace pp { 11 12 namespace { 13 interface_name()14template <> const char* interface_name<PPB_Ext_CrxFileSystem_Private_0_1>() { 15 return PPB_EXT_CRXFILESYSTEM_PRIVATE_INTERFACE_0_1; 16 } 17 18 } // namespace 19 ExtCrxFileSystemPrivate()20ExtCrxFileSystemPrivate::ExtCrxFileSystemPrivate() { 21 } 22 ExtCrxFileSystemPrivate(const InstanceHandle & instance)23ExtCrxFileSystemPrivate::ExtCrxFileSystemPrivate( 24 const InstanceHandle& instance) : instance_(instance.pp_instance()) { 25 } 26 ~ExtCrxFileSystemPrivate()27ExtCrxFileSystemPrivate::~ExtCrxFileSystemPrivate() { 28 } 29 Open(const CompletionCallbackWithOutput<pp::FileSystem> & cc)30int32_t ExtCrxFileSystemPrivate::Open( 31 const CompletionCallbackWithOutput<pp::FileSystem>& cc) { 32 if (!has_interface<PPB_Ext_CrxFileSystem_Private_0_1>()) 33 return cc.MayForce(PP_ERROR_NOINTERFACE); 34 return get_interface<PPB_Ext_CrxFileSystem_Private_0_1>()-> 35 Open(instance_, cc.output(), cc.pp_completion_callback()); 36 } 37 38 } // namespace pp 39