// Copyright 2011 Google Inc. All Rights Reserved. #include "class_loader.h" #include "class_linker.h" #include "runtime.h" namespace art { const std::vector& ClassLoader::GetClassPath(const ClassLoader* class_loader) { if (class_loader == NULL) { return Runtime::Current()->GetClassLinker()->GetBootClassPath(); } return class_loader->class_path_; } // TODO: get global references for these Class* PathClassLoader::dalvik_system_PathClassLoader_ = NULL; const PathClassLoader* PathClassLoader::Alloc(std::vector dex_files) { DCHECK(dalvik_system_PathClassLoader_ != NULL); PathClassLoader* p = down_cast(dalvik_system_PathClassLoader_->AllocObject()); p->SetClassPath(dex_files); return p; } void PathClassLoader::SetClass(Class* dalvik_system_PathClassLoader) { CHECK(dalvik_system_PathClassLoader_ == NULL); CHECK(dalvik_system_PathClassLoader != NULL); dalvik_system_PathClassLoader_ = dalvik_system_PathClassLoader; } void PathClassLoader::ResetClass() { CHECK(dalvik_system_PathClassLoader_ != NULL); dalvik_system_PathClassLoader_ = NULL; } } // namespace art