summaryrefslogtreecommitdiff
path: root/bridges/inc/bridges/remote/bridgeimpl.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'bridges/inc/bridges/remote/bridgeimpl.hxx')
-rw-r--r--bridges/inc/bridges/remote/bridgeimpl.hxx94
1 files changed, 0 insertions, 94 deletions
diff --git a/bridges/inc/bridges/remote/bridgeimpl.hxx b/bridges/inc/bridges/remote/bridgeimpl.hxx
deleted file mode 100644
index 0257dd5f879a..000000000000
--- a/bridges/inc/bridges/remote/bridgeimpl.hxx
+++ /dev/null
@@ -1,94 +0,0 @@
-/*************************************************************************
- *
- * 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
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef _BRIDGES_REMOTE_BRIDGEIMPL_HXX_
-#define _BRIDGES_REMOTE_BRIDGEIMPL_HXX_
-#include <osl/interlck.h>
-
-#include <uno/environment.h>
-
-#include <bridges/remote/context.h>
-#include <bridges/remote/remote.h>
-
-
-struct remote_BridgeImpl
-{
- void (SAL_CALL * m_allThreadsAreGone ) ( uno_Environment * );
- requestClientSideDispatcher m_sendRequest;
- oslInterlockedCount m_nRemoteThreads;
- sal_Bool m_bDisposed;
- sal_Bool m_bReleaseStubsCalled;
-};
-
-namespace bridges_remote {
-
- enum RemoteThreadCounter_HoldEnvWeak
- {
- RTC_HOLDENVWEAK = 0x1
- };
-
- class RemoteThreadCounter
- {
- public:
- // performance optimization. In some cases, it is not necessary to acquire the
- // environment.
- RemoteThreadCounter( uno_Environment *pEnvRemote, RemoteThreadCounter_HoldEnvWeak )
- : m_bReleaseEnvironment( sal_False )
- , m_pEnvRemote( pEnvRemote )
- {
- remote_Context *pContext = ((remote_Context *) m_pEnvRemote->pContext );
- osl_incrementInterlockedCount( &( pContext->m_pBridgeImpl->m_nRemoteThreads ) );
- }
-
- RemoteThreadCounter( uno_Environment *pEnvRemote )
- : m_bReleaseEnvironment( sal_True )
- , m_pEnvRemote( pEnvRemote )
- {
- m_pEnvRemote->acquire( m_pEnvRemote );
-
- remote_Context *pContext = ((remote_Context *) m_pEnvRemote->pContext );
- osl_incrementInterlockedCount( &( pContext->m_pBridgeImpl->m_nRemoteThreads ) );
- }
-
- ~RemoteThreadCounter( )
- {
- remote_Context *pContext = ((remote_Context *) m_pEnvRemote->pContext );
- if( 0 == osl_decrementInterlockedCount( &( pContext->m_pBridgeImpl->m_nRemoteThreads)) &&
- pContext->m_pBridgeImpl->m_bDisposed &&
- ! pContext->m_pBridgeImpl->m_bReleaseStubsCalled )
- {
- pContext->m_pBridgeImpl->m_allThreadsAreGone( m_pEnvRemote );
- }
- if( m_bReleaseEnvironment )
- m_pEnvRemote->release( m_pEnvRemote );
- }
-
- sal_Bool m_bReleaseEnvironment;
- uno_Environment *m_pEnvRemote;
- };
-}
-
-#endif