summaryrefslogtreecommitdiff
path: root/configmgr/source/treecache/invalidatetree.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'configmgr/source/treecache/invalidatetree.cxx')
-rw-r--r--configmgr/source/treecache/invalidatetree.cxx176
1 files changed, 0 insertions, 176 deletions
diff --git a/configmgr/source/treecache/invalidatetree.cxx b/configmgr/source/treecache/invalidatetree.cxx
deleted file mode 100644
index b8d1afb4db07..000000000000
--- a/configmgr/source/treecache/invalidatetree.cxx
+++ /dev/null
@@ -1,176 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: invalidatetree.cxx,v $
- * $Revision: 1.24 $
- *
- * 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
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_configmgr.hxx"
-
-
-#include "cachecontroller.hxx"
-#include "change.hxx"
-#include "valuenode.hxx"
-#include "updatehelper.hxx"
-#include "treeactions.hxx"
-#include "tracer.hxx"
-#include <com/sun/star/uno/Any.hxx>
-#include <com/sun/star/container/NoSuchElementException.hpp>
-
-#ifndef INCLUDED_ALGORITHM
-#include <algorithm>
-#define INCLUDED_ALGORITHM
-#endif
-
-namespace configmgr
-{
-
- namespace container = com::sun::star::container;
-// -----------------------------------------------------------------------------
-// ------------------------------- invalidateTree -------------------------------
-// -----------------------------------------------------------------------------
-
-namespace backend
-{
-// -----------------------------------------------------------------------------
-std::auto_ptr<SubtreeChange> createDiffs(sharable::Node * cachedNode,
- ISubtree const * _pLoadedSubtree,
- configuration::AbsolutePath const& _aAbsoluteSubtreePath)
-{
- OSL_PRECOND(cachedNode != 0, "Need an existing node to create a diff");
- OSL_PRECOND(_pLoadedSubtree != 0, "Need a result node to create a diff");
- // Create a TreeChangeList with the right name, parentname and ConfigurationProperties
- std::auto_ptr<SubtreeChange> aNewChange(new SubtreeChange(_aAbsoluteSubtreePath.getLocalName().getName(),
- node::Attributes()) );
-
- if (!createUpdateFromDifference(*aNewChange, cachedNode, *_pLoadedSubtree))
- aNewChange.reset();
-
- return aNewChange;
-}
-// -----------------------------------------------------------------------------
-#if 0
-std::auto_ptr<ISubtree> TreeManager::loadNodeFromSession( configuration::AbsolutePath const& _aAbsoluteSubtreePath,
- const vos::ORef < OOptions >& _xOptions,
- sal_Int16 _nMinLevels) SAL_THROW((com::sun::star::uno::Exception))
-{
- TreeInfo* pInfo = this->requestTreeInfo(_xOptions,true /*create TreeInfo*/);
-
- CFG_TRACE_INFO_NI("cache manager: cache miss. going to load the node");
- rtl::Reference< OTreeLoader > xLoader = pInfo->getNewLoaderWithoutPending(_aAbsoluteSubtreePath, _nMinLevels, _xOptions, m_xBackend.get());
-
- OSL_ENSURE(xLoader.is(), "Did not receive a loader for retrieving the node");
- CFG_TRACE_INFO_NI("cache manager: cache miss. going to load the node");
- if (!xLoader.is())
- throw container::NoSuchElementException((::rtl::OUString::createFromAscii("Error while retrieving the node")), NULL);
-
- // now block for reading
- std::auto_ptr<ISubtree> pResponse;
- try
- {
- pResponse = xLoader->waitToResponse();
- }
- catch (uno::Exception& e)
- {
- pInfo->releaseLoader(xLoader);
- throw;
- }
-
- pInfo->releaseLoader(xLoader);
-
- return pResponse;
-}
-#endif
-// -----------------------------------------------------------------------------
-
-sharable::TreeFragment * CacheController::refreshComponent(ComponentRequest const & _aRequest) SAL_THROW((com::sun::star::uno::Exception))
-{
- if (m_bDisposing) return NULL;
-
- rtl::Reference<CacheLoadingAccess> aCache = this->getCacheAlways(_aRequest.getOptions());
-
- if (!aCache.is()) return NULL;
-
- // load the Node direct from the session, without using the cache
- ComponentRequest aForcedRequest(_aRequest);
- aForcedRequest.forceReload();
-
- ResultHolder< ComponentInstance > aLoadedInstance = this->getComponentData(aForcedRequest,false);
- configuration::AbsolutePath aRequestPath = configuration::AbsolutePath::makeModulePath(_aRequest.getComponentName());
- NodeInstance aNodeInstance(aLoadedInstance.mutableInstance().mutableData(),aRequestPath) ;
- ResultHolder< NodeInstance > aLoadedNodeInstance(aNodeInstance) ;
-
- sharable::TreeFragment * aResult = NULL;
- if (aLoadedNodeInstance.is())
- {
- rtl::OUString aModuleName = aLoadedNodeInstance->root().getModuleName();
-
- bool bAcquired = aCache->acquireModule(aModuleName);
- aResult = (sharable::TreeFragment *)( aCache->getTreeAddress(aModuleName) );
-
- if (bAcquired)
- try
- {
- std::auto_ptr<SubtreeChange> aTreeChanges;
- sharable::Node * aRootAddress;
-
- {
- sharable::Node * rootNode = aResult == 0 ? 0 : aResult->getRootNode();
-
- aTreeChanges = createDiffs(rootNode, aLoadedNodeInstance->data().get(), aLoadedNodeInstance->root());
- aRootAddress = rootNode;
- }
-
- if (aTreeChanges.get() != NULL)
- {
- // change all Values... found in the Subtree in the CacheTree
- applyUpdateWithAdjustmentToTree(*aTreeChanges, aRootAddress);
-
- UpdateRequest anUpdateReq( aTreeChanges.get(),
- aLoadedNodeInstance->root(),
- _aRequest.getOptions()
- );
-
- m_aNotifier.notifyChanged(anUpdateReq);
- }
- aCache->releaseModule(aModuleName);
- }
- catch (...)
- {
- aCache->releaseModule(aModuleName);
- throw;
- }
- }
- return aResult;
-}
-
-// -----------------------------------------------------------------------------
- } // namespace backend
-
-// -----------------------------------------------------------------------------
-} // namespace configmgr
-