From b9d1006ebb3c97e398d4bb31075fd2577f3ac858 Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Mon, 1 Oct 2012 16:08:38 +0100 Subject: re-base on ALv2 code. Includes: #i118662# remove berkeleyDB from module l10tools Patch contributed by Oliver-Rainer Wittmann http://svn.apache.org/viewvc?view=revision&revision=1213189 reportdesign: remove extra items from Help menu Patch contributed by Ariel Constenla-Haile http://svn.apache.org/viewvc?view=revision&revision=1201215 --- helpcompiler/Executable_helpindexer.mk | 1 - helpcompiler/Executable_helplinker.mk | 1 - helpcompiler/Library_helplinker.mk | 1 - helpcompiler/Makefile | 7 ++ helpcompiler/inc/HelpCompiler.hxx | 42 ++++------ helpcompiler/inc/HelpLinker.hxx | 41 ++++------ helpcompiler/inc/dllapi.h | 43 ++++------ helpcompiler/source/HelpCompiler.cxx | 37 ++++----- helpcompiler/source/HelpLinker.cxx | 139 +++++--------------------------- helpcompiler/source/HelpLinker_main.cxx | 43 ++++------ 10 files changed, 103 insertions(+), 252 deletions(-) (limited to 'helpcompiler') diff --git a/helpcompiler/Executable_helpindexer.mk b/helpcompiler/Executable_helpindexer.mk index f7249b9a66d0..6c3839c55471 100644 --- a/helpcompiler/Executable_helpindexer.mk +++ b/helpcompiler/Executable_helpindexer.mk @@ -39,7 +39,6 @@ $(eval $(call gb_Executable_use_externals,HelpIndexer,\ expat_utf8 \ libxslt \ libxml2 \ - berkeleydb \ clucene \ )) diff --git a/helpcompiler/Executable_helplinker.mk b/helpcompiler/Executable_helplinker.mk index 4682943c7d4b..dbad161b805a 100644 --- a/helpcompiler/Executable_helplinker.mk +++ b/helpcompiler/Executable_helplinker.mk @@ -39,7 +39,6 @@ $(eval $(call gb_Executable_use_externals,HelpLinker,\ expat_utf8 \ libxslt \ libxml2 \ - berkeleydb \ clucene \ )) diff --git a/helpcompiler/Library_helplinker.mk b/helpcompiler/Library_helplinker.mk index 17966c4c3291..405ad80d4fa4 100644 --- a/helpcompiler/Library_helplinker.mk +++ b/helpcompiler/Library_helplinker.mk @@ -46,7 +46,6 @@ $(eval $(call gb_Library_use_libraries,helplinker,\ )) $(eval $(call gb_Library_use_externals,helplinker,\ - berkeleydb \ expat_utf8 \ libxslt \ libxml2 \ diff --git a/helpcompiler/Makefile b/helpcompiler/Makefile index ccb1c85a04da..0997e628485b 100644 --- a/helpcompiler/Makefile +++ b/helpcompiler/Makefile @@ -1,4 +1,11 @@ # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) diff --git a/helpcompiler/inc/HelpCompiler.hxx b/helpcompiler/inc/HelpCompiler.hxx index a7c4a16a995f..f0a4177f5507 100644 --- a/helpcompiler/inc/HelpCompiler.hxx +++ b/helpcompiler/inc/HelpCompiler.hxx @@ -1,30 +1,21 @@ /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* +/* + * This file is part of the LibreOffice project. * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. * - * Copyright 2000, 2010 Oracle and/or its affiliates. + * This file incorporates work covered by the following license notice: * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * - * for a copy of the LGPLv3 License. - * - ************************************************************************/ + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ #ifndef HELPCOMPILER_HXX #define HELPCOMPILER_HXX @@ -40,11 +31,6 @@ #include #include #include -#ifdef SYSTEM_DB_HEADER -#include SYSTEM_DB_HEADER -#else -#include -#endif #include diff --git a/helpcompiler/inc/HelpLinker.hxx b/helpcompiler/inc/HelpLinker.hxx index f6b8ddb86040..57e21a5424d1 100644 --- a/helpcompiler/inc/HelpLinker.hxx +++ b/helpcompiler/inc/HelpLinker.hxx @@ -1,30 +1,21 @@ /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* +/* + * This file is part of the LibreOffice project. * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. * - * Copyright 2000, 2010 Oracle and/or its affiliates. + * This file incorporates work covered by the following license notice: * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * - * for a copy of the LGPLv3 License. - * - ************************************************************************/ + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ #ifndef HELPLINKER_HXX #define HELPLINKER_HXX @@ -36,8 +27,6 @@ # undef _THREAD_SAFE #endif -#define DBHELP_ONLY - class L10N_DLLPUBLIC IndexerPreProcessor { private: @@ -94,7 +83,7 @@ private: IndexerPreProcessor* m_pIndexerPreProcessor; void initIndexerPreProcessor(); void link() throw( HelpProcessingException ); - void addBookmark( DB* dbBase, FILE* pFile_DBHelp, std::string thishid, + void addBookmark( FILE* pFile_DBHelp, std::string thishid, const std::string& fileB, const std::string& anchorB, const std::string& jarfileB, const std::string& titleB ); }; diff --git a/helpcompiler/inc/dllapi.h b/helpcompiler/inc/dllapi.h index 184a590944ed..c82395272134 100644 --- a/helpcompiler/inc/dllapi.h +++ b/helpcompiler/inc/dllapi.h @@ -1,30 +1,21 @@ /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * - * for a copy of the LGPLv3 License. - * - ************************************************************************/ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ #ifndef _L10N_DLLAPI_H #define _L10N_DLLAPI_H diff --git a/helpcompiler/source/HelpCompiler.cxx b/helpcompiler/source/HelpCompiler.cxx index 07989e4b953b..17bb2b0c9a98 100644 --- a/helpcompiler/source/HelpCompiler.cxx +++ b/helpcompiler/source/HelpCompiler.cxx @@ -1,30 +1,21 @@ /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* +/* + * This file is part of the LibreOffice project. * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. * - * Copyright 2000, 2010 Oracle and/or its affiliates. + * This file incorporates work covered by the following license notice: * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * - * for a copy of the LGPLv3 License. - * - ************************************************************************/ + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ #include diff --git a/helpcompiler/source/HelpLinker.cxx b/helpcompiler/source/HelpLinker.cxx index 242627c0476d..62d364583f2a 100644 --- a/helpcompiler/source/HelpLinker.cxx +++ b/helpcompiler/source/HelpLinker.cxx @@ -1,30 +1,21 @@ /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* +/* + * This file is part of the LibreOffice project. * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. * - * Copyright 2000, 2010 Oracle and/or its affiliates. + * This file incorporates work covered by the following license notice: * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * - * for a copy of the LGPLv3 License. - * - ************************************************************************/ + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ #include #include @@ -194,28 +185,6 @@ public: data.append(id); } - void dump(DB* table) - { - DataHashtable::const_iterator aEnd = _hash.end(); - for (DataHashtable::const_iterator aIter = _hash.begin(); aIter != aEnd; ++aIter) - { - const std::string &keystr = aIter->first; - DBT key; - memset(&key, 0, sizeof(key)); - key.data = const_cast(keystr.c_str()); - key.size = keystr.length(); - - const Data &data = aIter->second; - std::string str = data.getString(); - DBT value; - memset(&value, 0, sizeof(value)); - value.data = const_cast(str.c_str()); - value.size = str.length(); - - table->put(table, NULL, &key, &value, 0); - } - } - void dump_DBHelp( const fs::path& rFileName ) { #ifdef WNT //We need _wfopen to support long file paths on Windows XP @@ -257,7 +226,7 @@ namespace URLEncoder } } -void HelpLinker::addBookmark( DB* dbBase, FILE* pFile_DBHelp, std::string thishid, +void HelpLinker::addBookmark( FILE* pFile_DBHelp, std::string thishid, const std::string& fileB, const std::string& anchorB, const std::string& jarfileB, const std::string& titleB) { @@ -266,11 +235,6 @@ void HelpLinker::addBookmark( DB* dbBase, FILE* pFile_DBHelp, std::string thishi thishid = URLEncoder::encode(thishid); - DBT key; - memset(&key, 0, sizeof(key)); - key.data = const_cast(thishid.c_str()); - key.size = thishid.length(); - int fileLen = fileB.length(); if (!anchorB.empty()) fileLen += (1 + anchorB.length()); @@ -295,14 +259,6 @@ void HelpLinker::addBookmark( DB* dbBase, FILE* pFile_DBHelp, std::string thishi for (size_t j = 0; j < titleB.length(); ++j) dataB[i++] = titleB[j]; - DBT data; - memset(&data, 0, sizeof(data)); - data.data = &dataB[0]; - data.size = dataB.size(); - - if( dbBase != NULL ) - dbBase->put(dbBase, NULL, &key, &data, 0); - if( pFile_DBHelp != NULL ) { std::string aValueStr( dataB.begin(), dataB.end() ); @@ -337,10 +293,6 @@ void HelpLinker::link() throw( HelpProcessingException ) fs::create_directory(indexDirParentName); } -#ifdef CMC_DEBUG - std::cerr << "will not delete tmpdir of " << indexDirParentName.native_file_string().c_str() << std::endl; -#endif - std::string mod = module; std::transform (mod.begin(), mod.end(), mod.begin(), tocharlower); @@ -352,18 +304,8 @@ void HelpLinker::link() throw( HelpProcessingException ) appl = appl.substr(1); bool bUse_ = true; -#ifdef DBHELP_ONLY if( !bExtensionMode ) bUse_ = false; -#endif - - DB* helpText(0); -#ifndef DBHELP_ONLY - fs::path helpTextFileName(indexDirParentName / (mod + ".ht")); - db_create(&helpText,0,0); - helpText->open(helpText, NULL, helpTextFileName.native_file_string().c_str(), NULL, DB_BTREE, - DB_CREATE | DB_TRUNCATE, 0644); -#endif fs::path helpTextFileName_DBHelp(indexDirParentName / (mod + (bUse_ ? ".ht_" : ".ht"))); #ifdef WNT @@ -375,13 +317,6 @@ void HelpLinker::link() throw( HelpProcessingException ) FILE* pFileHelpText_DBHelp = fopen ( helpTextFileName_DBHelp.native_file_string().c_str(), "wb" ); #endif - DB* dbBase(0); -#ifndef DBHELP_ONLY - fs::path dbBaseFileName(indexDirParentName / (mod + ".db")); - db_create(&dbBase,0,0); - dbBase->open(dbBase, NULL, dbBaseFileName.native_file_string().c_str(), NULL, DB_BTREE, - DB_CREATE | DB_TRUNCATE, 0644); -#endif fs::path dbBaseFileName_DBHelp(indexDirParentName / (mod + (bUse_ ? ".db_" : ".db"))); #ifdef WNT @@ -393,14 +328,6 @@ void HelpLinker::link() throw( HelpProcessingException ) ( dbBaseFileName_DBHelp.native_file_string().c_str(), "wb" ); #endif -#ifndef DBHELP_ONLY - DB* keyWord(0); - fs::path keyWordFileName(indexDirParentName / (mod + ".key")); - db_create(&keyWord,0,0); - keyWord->open(keyWord, NULL, keyWordFileName.native_file_string().c_str(), NULL, DB_BTREE, - DB_CREATE | DB_TRUNCATE, 0644); -#endif - fs::path keyWordFileName_DBHelp(indexDirParentName / (mod + (bUse_ ? ".key_" : ".key"))); HelpKeyword helpKeyword; @@ -484,11 +411,7 @@ void HelpLinker::link() throw( HelpProcessingException ) std::string& titleB = documentTitle; // add once this as its own id. - addBookmark(dbBase, pFileDbBase_DBHelp, documentPath, fileB, std::string(), jarfileB, titleB); - - // first the database *.db - // ByteArrayInputStream bais = null; - // ObjectInputStream ois = null; + addBookmark( pFileDbBase_DBHelp, documentPath, fileB, std::string(), jarfileB, titleB); const HashSet *hidlist = streamTable.appl_hidlist; if (!hidlist) @@ -509,7 +432,7 @@ void HelpLinker::link() throw( HelpProcessingException ) anchorB = thishid.substr(1 + index); thishid = thishid.substr(0, index); } - addBookmark(dbBase, pFileDbBase_DBHelp, thishid, fileB, anchorB, jarfileB, titleB); + addBookmark( pFileDbBase_DBHelp, thishid, fileB, anchorB, jarfileB, titleB); } } @@ -525,8 +448,8 @@ void HelpLinker::link() throw( HelpProcessingException ) enumer != aEnd; ++enumer) { const std::string &anchor = enumer->first; - addBookmark(dbBase, pFileDbBase_DBHelp, documentPath, fileB, - anchor, jarfileB, titleB); + addBookmark(pFileDbBase_DBHelp, documentPath, fileB, + anchor, jarfileB, titleB); std::string totalId = fakedHid + "#" + anchor; // std::cerr << hzipFileName << std::endl; const LinkedList& ll = enumer->second; @@ -555,19 +478,6 @@ void HelpLinker::link() throw( HelpProcessingException ) helpTextId = URLEncoder::encode(helpTextId); - DBT keyDbt; - memset(&keyDbt, 0, sizeof(keyDbt)); - keyDbt.data = const_cast(helpTextId.c_str()); - keyDbt.size = helpTextId.length(); - - DBT textDbt; - memset(&textDbt, 0, sizeof(textDbt)); - textDbt.data = const_cast(helpTextText.c_str()); - textDbt.size = helpTextText.length(); - - if( helpText != NULL ) - helpText->put(helpText, NULL, &keyDbt, &textDbt, 0); - if( pFileHelpText_DBHelp != NULL ) writeKeyValue_DBHelp( pFileHelpText_DBHelp, helpTextId, helpTextText ); } @@ -594,11 +504,6 @@ void HelpLinker::link() throw( HelpProcessingException ) catch( const HelpProcessingException& ) { // catch HelpProcessingException to avoid locking data bases -#ifndef DBHELP_ONLY - helpText->close(helpText, 0); - dbBase->close(dbBase, 0); - keyWord->close(keyWord, 0); -#endif if( pFileHelpText_DBHelp != NULL ) fclose( pFileHelpText_DBHelp ); if( pFileDbBase_DBHelp != NULL ) @@ -606,12 +511,6 @@ void HelpLinker::link() throw( HelpProcessingException ) throw; } -#ifndef DBHELP_ONLY - helpText->close(helpText, 0); - dbBase->close(dbBase, 0); - helpKeyword.dump(keyWord); - keyWord->close(keyWord, 0); -#endif if( pFileHelpText_DBHelp != NULL ) fclose( pFileHelpText_DBHelp ); if( pFileDbBase_DBHelp != NULL ) diff --git a/helpcompiler/source/HelpLinker_main.cxx b/helpcompiler/source/HelpLinker_main.cxx index 1c5ca7e3372f..8542a761f5df 100644 --- a/helpcompiler/source/HelpLinker_main.cxx +++ b/helpcompiler/source/HelpLinker_main.cxx @@ -1,30 +1,21 @@ /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * - * for a copy of the LGPLv3 License. - * - ************************************************************************/ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ #include #include -- cgit