You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by jb...@apache.org on 2018/01/10 20:09:10 UTC

[geode-native] branch develop updated: GEODE-4254: Cleanup public macros. (#183)

This is an automated email from the ASF dual-hosted git repository.

jbarrett pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode-native.git


The following commit(s) were added to refs/heads/develop by this push:
     new c968058  GEODE-4254: Cleanup public macros. (#183)
c968058 is described below

commit c968058937891eab157cde9dc186c5aba772e053
Author: Jacob Barrett <jb...@pivotal.io>
AuthorDate: Wed Jan 10 12:09:08 2018 -0800

    GEODE-4254: Cleanup public macros. (#183)
    
    - Removes TEMPLATE_EXPORT macro.
    - Renames internal _GF_CACHEABLE_* to _GEODE_CACHEABLE_*
    - Removes DINP_THROWONERROR_DEFAULT
    - Rename checkBufferSize to internal _GEODE_CHECK_BUFFER_SIZE.
    - Rename LIB* to internal _GEODE_LIB*
    - Removes GFCEXTERN
    - Rename CPPCACHE_EXPORT to internal _GEODE_EXPORT
    - Removed inittypes.h redefinition
    - Rename GF_NEW to internal _GEODE_NEW
    - Rename FRIEND_STD_SHARED_PTR to internal _GEODE_FRIEND_STD_SHARED_PTR
    - Converts PersistenceManager constants to constexpr.
    - Removes ATTR_UNUSED
    - Removes unused platform defines.
    - Replaces platform macros with CMake config.h
    - Moves geode_base.hpp and geode_globals.hpp internal.
    - Extracts internal GfErrorType.
---
 clicache/src/DataInput.cpp                         |   4 +-
 clicache/src/IGeodeSerializable.hpp                |   2 +-
 clicache/src/Utils.hpp                             |   2 +-
 clicache/src/impl/MemoryPressureHandler.hpp        |   2 +-
 .../src/impl/CPPParser/CPPDictionary.hpp           |   4 +-
 cppcache/include/geode/AttributesFactory.hpp       |   4 +-
 cppcache/include/geode/AttributesMutator.hpp       |   4 +-
 cppcache/include/geode/AuthInitialize.hpp          |   4 +-
 cppcache/include/geode/Cache.hpp                   |   8 +-
 cppcache/include/geode/CacheAttributes.hpp         |   4 +-
 cppcache/include/geode/CacheFactory.hpp            |   4 +-
 cppcache/include/geode/CacheListener.hpp           |   4 +-
 cppcache/include/geode/CacheLoader.hpp             |   4 +-
 cppcache/include/geode/CacheStatistics.hpp         |   4 +-
 cppcache/include/geode/CacheTransactionManager.hpp |   4 +-
 cppcache/include/geode/CacheWriter.hpp             |   4 +-
 cppcache/include/geode/Cacheable.hpp               |   2 +-
 cppcache/include/geode/CacheableBuiltins.hpp       | 178 +++++++-------
 cppcache/include/geode/CacheableDate.hpp           |   6 +-
 cppcache/include/geode/CacheableEnum.hpp           |   6 +-
 cppcache/include/geode/CacheableFileName.hpp       |   6 +-
 cppcache/include/geode/CacheableKey.hpp            |   6 +-
 cppcache/include/geode/CacheableKeys.hpp           |   2 +-
 cppcache/include/geode/CacheableObjectArray.hpp    |   6 +-
 cppcache/include/geode/CacheableString.hpp         |   6 +-
 cppcache/include/geode/CacheableUndefined.hpp      |   6 +-
 cppcache/include/geode/CqAttributes.hpp            |   4 +-
 cppcache/include/geode/CqAttributesFactory.hpp     |   4 +-
 cppcache/include/geode/CqAttributesMutator.hpp     |   4 +-
 cppcache/include/geode/CqEvent.hpp                 |   4 +-
 cppcache/include/geode/CqListener.hpp              |   4 +-
 cppcache/include/geode/CqOperation.hpp             |   4 +-
 cppcache/include/geode/CqQuery.hpp                 |   4 +-
 cppcache/include/geode/CqResults.hpp               |   4 +-
 cppcache/include/geode/CqServiceStatistics.hpp     |   4 +-
 cppcache/include/geode/CqState.hpp                 |   4 +-
 cppcache/include/geode/CqStatistics.hpp            |   4 +-
 cppcache/include/geode/CqStatusListener.hpp        |   2 +-
 cppcache/include/geode/DataInput.hpp               |  55 ++---
 cppcache/include/geode/DataOutput.hpp              |   8 +-
 cppcache/include/geode/DefaultResultCollector.hpp  |   4 +-
 cppcache/include/geode/Delta.hpp                   |   4 +-
 cppcache/include/geode/DiskPolicyType.hpp          |   4 +-
 cppcache/include/geode/DistributedSystem.hpp       |   4 +-
 cppcache/include/geode/EntryEvent.hpp              |   4 +-
 cppcache/include/geode/Exception.hpp               |   4 +-
 cppcache/include/geode/ExceptionTypes.hpp          | 258 ++++++++++-----------
 cppcache/include/geode/Execution.hpp               |   5 +-
 cppcache/include/geode/ExpirationAction.hpp        |   4 +-
 cppcache/include/geode/ExpirationAttributes.hpp    |   4 +-
 cppcache/include/geode/FixedPartitionResolver.hpp  |   2 +-
 cppcache/include/geode/FunctionService.hpp         |   4 +-
 cppcache/include/geode/GeodeCache.hpp              |   4 +-
 cppcache/include/geode/PartitionResolver.hpp       |   4 +-
 cppcache/include/geode/PdxFieldTypes.hpp           |   4 +-
 cppcache/include/geode/PdxInstance.hpp             |   2 +-
 cppcache/include/geode/PdxInstanceFactory.hpp      |   4 +-
 cppcache/include/geode/PdxReader.hpp               |   2 +-
 cppcache/include/geode/PdxSerializable.hpp         |   4 +-
 cppcache/include/geode/PdxSerializer.hpp           |   2 +-
 cppcache/include/geode/PdxUnreadFields.hpp         |   4 +-
 cppcache/include/geode/PdxWrapper.hpp              |   6 +-
 cppcache/include/geode/PdxWriter.hpp               |   4 +-
 cppcache/include/geode/PersistenceManager.hpp      |  41 ++--
 cppcache/include/geode/Pool.hpp                    |   6 +-
 cppcache/include/geode/PoolFactory.hpp             |   6 +-
 cppcache/include/geode/PoolManager.hpp             |   6 +-
 cppcache/include/geode/Properties.hpp              |   5 +-
 cppcache/include/geode/Query.hpp                   |   4 +-
 cppcache/include/geode/QueryService.hpp            |   4 +-
 cppcache/include/geode/Region.hpp                  |   6 +-
 cppcache/include/geode/RegionAttributes.hpp        |   6 +-
 cppcache/include/geode/RegionEntry.hpp             |   6 +-
 cppcache/include/geode/RegionEvent.hpp             |   4 +-
 cppcache/include/geode/RegionFactory.hpp           |   4 +-
 cppcache/include/geode/RegionService.hpp           |   4 +-
 cppcache/include/geode/RegionShortcut.hpp          |   2 +-
 cppcache/include/geode/ResultCollector.hpp         |   4 +-
 cppcache/include/geode/ResultSet.hpp               |   4 +-
 cppcache/include/geode/SelectResults.hpp           |   4 +-
 cppcache/include/geode/SelectResultsIterator.hpp   |   6 +-
 cppcache/include/geode/Serializable.hpp            |   4 +-
 cppcache/include/geode/Serializer.hpp              |   4 +-
 cppcache/include/geode/Struct.hpp                  |   4 +-
 cppcache/include/geode/StructSet.hpp               |   4 +-
 cppcache/include/geode/SystemProperties.hpp        |   2 +-
 cppcache/include/geode/TransactionId.hpp           |   6 +-
 cppcache/include/geode/TypeRegistry.hpp            |   2 +-
 cppcache/include/geode/WritablePdxInstance.hpp     |   2 +-
 cppcache/include/geode/internal/geode_base.hpp     | 141 +++++++++++
 .../include/geode/{ => internal}/geode_globals.hpp |  74 +-----
 cppcache/integration-test/CacheHelper.cpp          |   1 +
 cppcache/integration-test/CacheHelper.hpp          |   1 +
 cppcache/integration-test/LibraryCallbacks.cpp     |   2 +-
 .../integration-test/ThinClientPdxSerializer.hpp   |   7 +-
 .../integration-test/ThinClientPdxSerializers.hpp  |  13 +-
 cppcache/integration-test/fw_dunit.hpp             |  35 ++-
 cppcache/integration-test/fw_helper.hpp            |   2 +-
 cppcache/integration-test/testCache.cpp            |   1 -
 cppcache/integration-test/testFwPerf.cpp           |   1 -
 .../integration-test/testOverflowPutGetSqLite.cpp  |   6 +-
 cppcache/integration-test/testSerialization.cpp    |   8 +-
 .../integration-test/testThinClientBigValue.cpp    |   8 +-
 cppcache/integration-test/testThinClientCq.cpp     |   4 +-
 .../integration-test/testThinClientCqDelta.cpp     |   2 +-
 .../integration-test/testThinClientCqDurable.cpp   |  10 +-
 cppcache/integration-test/testThinClientCqIR.cpp   |   2 +-
 .../testThinClientDeltaWithNotification.cpp        |   2 +-
 .../testThinClientHAQueryFailover.cpp              |   2 +-
 .../testThinClientInterest1_Bug1001.cpp            |   4 +-
 .../testThinClientLRUExpiration.cpp                |   2 +-
 ...ThinClientNotificationWithDeltaWithoutcache.cpp |   2 +-
 .../integration-test/testThinClientPRSingleHop.cpp |   3 +-
 .../integration-test/testThinClientPdxEnum.cpp     |   2 +-
 .../integration-test/testThinClientPdxInstance.cpp |   2 +-
 .../integration-test/testThinClientPdxTests.cpp    |   1 -
 .../testThinClientPoolAttrTest.cpp                 |   1 -
 .../testThinClientPoolExecuteFunction.cpp          |   1 -
 ...oolExecuteFunctionDisableChunkHandlerThread.cpp |   1 -
 .../testThinClientPutWithDelta.cpp                 |   2 +-
 .../testThinClientRemoteQueryRS.cpp                |   2 +-
 .../testThinClientRemoteQuerySS.cpp                |   2 +-
 .../testThinClientRemoteQueryTimeout.cpp           |  16 +-
 .../testThinClientRemoteRegionQuery.cpp            |  11 +-
 .../testThinClientSecurityCQAuthorizationMU.cpp    |   2 -
 ...tThinClientSecurityDurableCQAuthorizationMU.cpp |   2 -
 .../testXmlCacheCreationWithOverFlow.cpp           |   1 -
 cppcache/src/AdminRegion.cpp                       |   2 +-
 cppcache/src/AdminRegion.hpp                       |   3 +-
 cppcache/src/Assert.hpp                            |   4 +-
 cppcache/src/AutoDelete.hpp                        |   6 +-
 cppcache/src/Cache.cpp                             |   2 +-
 cppcache/src/CacheConfig.hpp                       |   4 +-
 cppcache/src/CacheImpl.cpp                         |   6 +-
 cppcache/src/CacheImpl.hpp                         |   4 +-
 cppcache/src/CachePerfStats.hpp                    |   4 +-
 cppcache/src/CacheRegionHelper.hpp                 |   4 +-
 cppcache/src/CacheXml.hpp                          |   4 +-
 cppcache/src/CacheXmlCreation.hpp                  |   4 +-
 cppcache/src/CacheXmlParser.cpp                    |   6 +-
 cppcache/src/CacheXmlParser.hpp                    |   2 +-
 cppcache/src/CacheableBuiltins.cpp                 |   9 +-
 cppcache/src/CacheableObjectPartList.hpp           |   2 +-
 cppcache/src/CacheableToken.cpp                    |   2 +-
 cppcache/src/CacheableToken.hpp                    |   8 +-
 cppcache/src/ClientMetadata.hpp                    |   2 +-
 cppcache/src/ClientProxyMembershipID.hpp           |   2 +-
 cppcache/src/ConcurrentEntriesMap.hpp              |   4 +-
 cppcache/src/Condition.hpp                         |   4 +-
 cppcache/src/ConnectCounter.hpp                    |   4 +-
 cppcache/src/Connector.hpp                         |   2 +-
 cppcache/src/CppCacheLibrary.hpp                   |   4 +-
 cppcache/src/CqAttributesImpl.hpp                  |   2 +-
 cppcache/src/CqAttributesMutatorImpl.hpp           |   4 +-
 cppcache/src/CqEventImpl.hpp                       |   2 +-
 cppcache/src/CqQueryImpl.hpp                       |   4 +-
 cppcache/src/CqQueryVsdStats.cpp                   |   2 +-
 cppcache/src/CqQueryVsdStats.hpp                   |   4 +-
 cppcache/src/CqService.cpp                         |   2 +-
 cppcache/src/CqService.hpp                         |   9 +-
 cppcache/src/CqServiceVsdStats.cpp                 |   2 +-
 cppcache/src/CqServiceVsdStats.hpp                 |   4 +-
 cppcache/src/DSMemberForVersionStamp.hpp           |   2 +-
 cppcache/src/DataInput.cpp                         |   8 +-
 cppcache/src/DataOutput.cpp                        |  12 +-
 cppcache/src/DiskStoreId.cpp                       |   6 +-
 cppcache/src/DiskStoreId.hpp                       |   2 +-
 cppcache/src/DistributedSystem.cpp                 |   2 +-
 cppcache/src/DistributedSystemImpl.hpp             |   4 +-
 cppcache/src/EntriesMap.hpp                        |   4 +-
 cppcache/src/EntriesMapFactory.hpp                 |   4 +-
 cppcache/src/EntryExpiryHandler.hpp                |   4 +-
 cppcache/src/EnumInfo.hpp                          |   2 +-
 .../geode/geode_base.hpp => src/ErrType.hpp}       | 235 +------------------
 cppcache/src/EventId.hpp                           |   4 +-
 cppcache/src/EventIdMap.hpp                        |   4 +-
 cppcache/src/EventSource.hpp                       |   2 +-
 cppcache/src/EvictionController.cpp                |   4 +-
 cppcache/src/EvictionController.hpp                |   2 +-
 cppcache/src/EvictionThread.hpp                    |   2 +-
 cppcache/src/ExceptionTypes.cpp                    |   1 +
 cppcache/src/ExecutionImpl.cpp                     |   2 +-
 cppcache/src/ExecutionImpl.hpp                     |   2 +-
 cppcache/src/ExpMapEntry.hpp                       |  12 +-
 cppcache/src/ExpiryHandler_T.hpp                   |   2 +-
 cppcache/src/ExpiryTaskManager.hpp                 |   4 +-
 cppcache/src/FairQueue.hpp                         |   2 +-
 cppcache/src/FarSideEntryOp.hpp                    |   2 +-
 cppcache/src/FunctionServiceImpl.hpp               |   6 +-
 cppcache/src/IntQueue.hpp                          |   2 +-
 cppcache/src/InterestResultPolicy.hpp              |   4 +-
 .../src/InternalCacheTransactionManager2PC.hpp     |   2 +-
 cppcache/src/LRUAction.hpp                         |  10 +-
 cppcache/src/LRUEntriesMap.cpp                     |   2 +-
 cppcache/src/LRUEntriesMap.hpp                     |   8 +-
 cppcache/src/LRUExpMapEntry.hpp                    |  14 +-
 cppcache/src/LRUList.hpp                           |   4 +-
 cppcache/src/LRULocalDestroyAction.hpp             |   4 +-
 cppcache/src/LRUMapEntry.hpp                       |  12 +-
 cppcache/src/LocalRegion.cpp                       |   6 +-
 cppcache/src/LocalRegion.hpp                       |   4 +-
 cppcache/src/Log.cpp                               |   2 +-
 cppcache/src/MapEntry.hpp                          |  19 +-
 cppcache/src/MapEntryT.hpp                         |   4 +-
 cppcache/src/MapSegment.hpp                        |   4 +-
 cppcache/src/MapWithLock.hpp                       |   2 +-
 cppcache/src/MemberListForVersionStamp.hpp         |   2 +-
 cppcache/src/NoResult.hpp                          |   4 +-
 cppcache/src/NonCopyable.hpp                       |   4 +-
 cppcache/src/PdxFieldType.hpp                      |   4 +-
 cppcache/src/PdxInstanceFactoryImpl.hpp            |   2 +-
 cppcache/src/PdxInstanceImpl.cpp                   |  16 +-
 cppcache/src/PdxInstanceImpl.hpp                   |   2 +-
 cppcache/src/PdxType.cpp                           |   6 +-
 cppcache/src/PdxTypeRegistry.hpp                   |   2 +-
 cppcache/src/PdxTypes.hpp                          |   2 +-
 cppcache/src/PersistenceManager.cpp                |  17 +-
 cppcache/src/PoolAttributes.hpp                    |   2 +-
 cppcache/src/PoolStatistics.cpp                    |   2 +-
 cppcache/src/PoolStatistics.hpp                    |   2 +-
 cppcache/src/PoolXmlCreation.hpp                   |   4 +-
 cppcache/src/PreservedDataExpiryHandler.hpp        |   4 +-
 cppcache/src/ProxyCache.cpp                        |   2 +-
 cppcache/src/ProxyCache.hpp                        |   4 +-
 cppcache/src/ProxyRegion.hpp                       |   6 +-
 cppcache/src/ProxyRemoteQueryService.hpp           |   4 +-
 .../src/PutAllPartialResultServerException.hpp     |   2 +-
 cppcache/src/Queue.hpp                             |   2 +-
 cppcache/src/ReadWriteLock.hpp                     |   2 +-
 cppcache/src/RegionConfig.hpp                      |   2 +-
 cppcache/src/RegionExpiryHandler.hpp               |   4 +-
 cppcache/src/RegionGlobalLocks.hpp                 |   2 +-
 cppcache/src/RegionInternal.hpp                    |   1 +
 cppcache/src/RegionStats.cpp                       |   2 +-
 cppcache/src/RegionStats.hpp                       |   4 +-
 cppcache/src/RegionXmlCreation.hpp                 |   4 +-
 cppcache/src/RemoteQuery.hpp                       |   4 +-
 cppcache/src/RemoteQueryService.cpp                |   2 +-
 cppcache/src/RemoteQueryService.hpp                |   4 +-
 cppcache/src/ResultSetImpl.hpp                     |   4 +-
 cppcache/src/Serializable.cpp                      |   2 +-
 cppcache/src/SerializationRegistry.cpp             |   2 +-
 cppcache/src/SerializationRegistry.hpp             |   5 +-
 cppcache/src/ServerLocation.hpp                    |   2 +-
 cppcache/src/Set.hpp                               |   2 +-
 cppcache/src/StructSetImpl.hpp                     |   4 +-
 cppcache/src/SuspendedTxExpiryHandler.hpp          |   4 +-
 cppcache/src/SystemProperties.cpp                  |   4 +-
 cppcache/src/TXCommitMessage.cpp                   |   2 +-
 cppcache/src/TXCommitMessage.hpp                   |   2 +-
 cppcache/src/TXEntryState.hpp                      |   2 +-
 cppcache/src/TableOfPrimes.hpp                     |   4 +-
 cppcache/src/Task.hpp                              |   2 +-
 cppcache/src/TcpConn.cpp                           |   5 +-
 cppcache/src/TcpConn.hpp                           |   4 +-
 cppcache/src/TcpSslConn.cpp                        |   4 +-
 cppcache/src/TcrChunkedContext.hpp                 |   2 +-
 cppcache/src/TcrConnection.cpp                     |  55 ++---
 cppcache/src/TcrConnection.hpp                     |   4 +-
 cppcache/src/TcrConnectionManager.cpp              |  14 +-
 cppcache/src/TcrConnectionManager.hpp              |   4 +-
 cppcache/src/TcrDistributionManager.cpp            |   2 +-
 cppcache/src/TcrDistributionManager.hpp            |   4 +-
 cppcache/src/TcrEndpoint.cpp                       |  28 +--
 cppcache/src/TcrEndpoint.hpp                       |   7 +-
 cppcache/src/TcrHADistributionManager.cpp          |   2 +-
 cppcache/src/TcrHADistributionManager.hpp          |   4 +-
 cppcache/src/TcrMessage.cpp                        |  16 +-
 cppcache/src/TcrMessage.hpp                        |   4 +-
 cppcache/src/ThinClientBaseDM.cpp                  |  10 +-
 cppcache/src/ThinClientBaseDM.hpp                  |   2 +-
 .../src/ThinClientCacheDistributionManager.cpp     |   2 +-
 .../src/ThinClientCacheDistributionManager.hpp     |   4 +-
 cppcache/src/ThinClientHARegion.cpp                |   2 +-
 cppcache/src/ThinClientHARegion.hpp                |   2 +-
 cppcache/src/ThinClientLocatorHelper.hpp           |   2 +-
 cppcache/src/ThinClientPoolDM.cpp                  |  28 +--
 cppcache/src/ThinClientPoolDM.hpp                  |   8 +-
 cppcache/src/ThinClientPoolHADM.cpp                |   2 +-
 cppcache/src/ThinClientRedundancyManager.cpp       |   2 +-
 cppcache/src/ThinClientRegion.cpp                  |   8 +-
 cppcache/src/ThinClientRegion.hpp                  |   2 +-
 cppcache/src/ThinClientStickyManager.cpp           |   4 +-
 cppcache/src/TimeoutTimer.hpp                      |   4 +-
 cppcache/src/TombstoneExpiryHandler.hpp            |   4 +-
 cppcache/src/TransactionalOperation.hpp            |   2 +-
 cppcache/src/UserAttributes.cpp                    |   4 +-
 cppcache/src/UserAttributes.hpp                    |   4 +-
 cppcache/src/Utils.hpp                             |   6 +-
 cppcache/src/VersionStamp.hpp                      |  17 +-
 cppcache/src/VersionedCacheableObjectPartList.cpp  |   2 +-
 cppcache/src/VersionedCacheableObjectPartList.hpp  |   2 +-
 cppcache/src/config.h.in                           |  11 +-
 cppcache/src/dllmain.cpp                           |   2 +-
 cppcache/src/statistics/AtomicStatisticsImpl.cpp   |   2 +-
 cppcache/src/statistics/AtomicStatisticsImpl.hpp   |   2 +-
 cppcache/src/statistics/GeodeStatisticsFactory.cpp |   2 +-
 cppcache/src/statistics/GeodeStatisticsFactory.hpp |   2 +-
 cppcache/src/statistics/HostStatHelper.cpp         |   2 +-
 cppcache/src/statistics/HostStatHelper.hpp         |   4 +-
 cppcache/src/statistics/HostStatHelperLinux.cpp    |  12 +-
 cppcache/src/statistics/HostStatHelperLinux.hpp    |  22 +-
 cppcache/src/statistics/HostStatHelperNull.cpp     |   2 +-
 cppcache/src/statistics/HostStatHelperNull.hpp     |   2 +-
 cppcache/src/statistics/HostStatHelperSolaris.cpp  |  15 +-
 cppcache/src/statistics/HostStatHelperSolaris.hpp  |  37 +--
 cppcache/src/statistics/HostStatHelperWin.cpp      |   2 +-
 cppcache/src/statistics/HostStatHelperWin.hpp      |  12 +-
 cppcache/src/statistics/HostStatSampler.cpp        |   2 +-
 cppcache/src/statistics/HostStatSampler.hpp        |   8 +-
 cppcache/src/statistics/LinuxProcessStats.cpp      |   3 +-
 cppcache/src/statistics/LinuxProcessStats.hpp      |   5 +-
 cppcache/src/statistics/NullProcessStats.cpp       |   2 +-
 cppcache/src/statistics/NullProcessStats.hpp       |   4 +-
 cppcache/src/statistics/PoolStatsSampler.cpp       |   2 +-
 cppcache/src/statistics/PoolStatsSampler.hpp       |   4 +-
 cppcache/src/statistics/ProcessStats.hpp           |   4 +-
 cppcache/src/statistics/SolarisProcessStats.cpp    |   3 +-
 cppcache/src/statistics/SolarisProcessStats.hpp    |  11 +-
 cppcache/src/statistics/StatArchiveWriter.cpp      |   4 +-
 cppcache/src/statistics/StatArchiveWriter.hpp      |  12 +-
 cppcache/src/statistics/StatSamplerStats.hpp       |   4 +-
 cppcache/src/statistics/StatisticDescriptor.hpp    |   4 +-
 cppcache/src/statistics/Statistics.hpp             |   4 +-
 cppcache/src/statistics/StatisticsFactory.hpp      |   4 +-
 cppcache/src/statistics/StatisticsManager.cpp      |   2 +-
 cppcache/src/statistics/StatisticsManager.hpp      |   2 +-
 cppcache/src/statistics/StatisticsType.hpp         |   4 +-
 cppcache/src/statistics/WindowsProcessStats.cpp    |   2 +-
 cppcache/src/statistics/WindowsProcessStats.hpp    |   4 +-
 cppcache/src/util/Log.hpp                          |   6 +-
 cppcache/src/util/exception.hpp                    |   7 +-
 cppcache/test/DataInputTest.cpp                    |  11 +-
 cryptoimpl/DHImpl.cpp                              |   8 +-
 cryptoimpl/DHImpl.hpp                              |  39 ++--
 cryptoimpl/SSLImpl.hpp                             |  10 +-
 dhimpl/DHImpl.hpp                                  |  27 ++-
 .../pdx-auto-serialization.html.md.erb             |   8 +-
 quickstart/cpp/queryobjects/Position.hpp           |   4 +-
 quickstart/cpp/queryobjects/PositionPdx.hpp        |   4 +-
 quickstart/cpp/queryobjects/PositionPdxAuto.hpp    |   6 +-
 sqliteimpl/SqLiteImpl.cpp                          |   5 +-
 templates/security/PkcsAuthInit.cpp                |   2 +-
 templates/security/UserPasswordAuthInit.cpp        |   2 +-
 tests/cpp/fwk/UdpIpc.cpp                           |   2 +-
 tests/cpp/fwklib/FwkBB.hpp                         |   2 +-
 tests/cpp/fwklib/FwkLog.hpp                        |   2 +-
 tests/cpp/fwklib/FwkStrCvt.hpp                     |  21 +-
 tests/cpp/fwklib/GsRandom.hpp                      |   2 +-
 tests/cpp/fwklib/IpcHandler.hpp                    |   2 +-
 tests/cpp/fwklib/PerfFwk.hpp                       |   2 +-
 tests/cpp/fwklib/QueryHelper.hpp                   |   3 -
 tests/cpp/fwklib/Service.hpp                       |   2 +-
 tests/cpp/fwklib/TcpIpc.cpp                        |   2 +
 tests/cpp/fwklib/TcpIpc.hpp                        |   2 +-
 tests/cpp/fwklib/TimeBomb.cpp                      |   3 +-
 tests/cpp/fwklib/TimeSync.cpp                      |   3 +
 tests/cpp/fwklib/Timer.hpp                         |  16 +-
 tests/cpp/fwklib/UDPIpc.cpp                        |   8 +-
 tests/cpp/security/PkcsAuthInit.cpp                |   2 +-
 tests/cpp/security/Security.cpp                    |   2 +
 tests/cpp/security/typedefs.hpp                    |  14 +-
 tests/cpp/testobject/ArrayOfByte.hpp               |   4 +-
 tests/cpp/testobject/BatchObject.hpp               |   4 +-
 tests/cpp/testobject/DeltaFastAssetAccount.hpp     |   4 +-
 tests/cpp/testobject/DeltaPSTObject.hpp            |   4 +-
 tests/cpp/testobject/DeltaTestImpl.hpp             |   6 +-
 tests/cpp/testobject/DeltaTestObj.hpp              |   4 +-
 tests/cpp/testobject/EqStruct.hpp                  |   4 +-
 tests/cpp/testobject/FastAsset.hpp                 |   4 +-
 tests/cpp/testobject/FastAssetAccount.cpp          |   3 +
 tests/cpp/testobject/FastAssetAccount.hpp          |   4 +-
 tests/cpp/testobject/InvalidPdxUsage.cpp           |   3 +-
 tests/cpp/testobject/InvalidPdxUsage.hpp           |  10 +-
 tests/cpp/testobject/NestedPdxObject.hpp           |  12 +-
 tests/cpp/testobject/NonPdxType.hpp                |   4 +-
 tests/cpp/testobject/NoopAuthInit.cpp              |   2 +-
 tests/cpp/testobject/PSTObject.hpp                 |   4 +-
 tests/cpp/testobject/PdxClassV1.hpp                |  19 +-
 tests/cpp/testobject/PdxClassV2.hpp                |  19 +-
 tests/cpp/testobject/PdxType.cpp                   |   2 +-
 tests/cpp/testobject/PdxType.hpp                   |  22 +-
 tests/cpp/testobject/PdxVersioned1.cpp             |   2 +-
 tests/cpp/testobject/PdxVersioned1.hpp             |   6 +-
 tests/cpp/testobject/PdxVersioned2.cpp             |   2 +-
 tests/cpp/testobject/PdxVersioned2.hpp             |   6 +-
 tests/cpp/testobject/Position.hpp                  |   4 +-
 tests/cpp/testobject/PositionPdx.hpp               |   4 +-
 tests/cpp/testobject/TestObject1.cpp               |   2 +-
 tests/cpp/testobject/TestObject1.hpp               |   4 +-
 tests/cpp/testobject/TimestampedObject.hpp         |   4 +-
 tests/cpp/testobject/VariousPdxTypes.hpp           |  31 ++-
 392 files changed, 1407 insertions(+), 1536 deletions(-)

diff --git a/clicache/src/DataInput.cpp b/clicache/src/DataInput.cpp
index 9046de1..12e3169 100644
--- a/clicache/src/DataInput.cpp
+++ b/clicache/src/DataInput.cpp
@@ -93,7 +93,7 @@ namespace Apache
           _GF_MG_EXCEPTION_TRY2
 
             System::Int32 len = buffer->Length;
-          GF_NEW(m_buffer, System::Byte[len]);
+          _GEODE_NEW(m_buffer, System::Byte[len]);
           pin_ptr<const Byte> pin_buffer = &buffer[0];
           memcpy(m_buffer, (void*)pin_buffer, len);
           m_nativeptr = gcnew native_conditional_unique_ptr<native::DataInput>(m_cache->GetNative()->createDataInput(m_buffer, len));
@@ -135,7 +135,7 @@ namespace Apache
           //System::Array::Copy(buffer, 0, m_bytes, 0, len);
           _GF_MG_EXCEPTION_TRY2
 
-            GF_NEW(m_buffer, System::Byte[len]);
+            _GEODE_NEW(m_buffer, System::Byte[len]);
           pin_ptr<const Byte> pin_buffer = &buffer[0];
           memcpy(m_buffer, (void*)pin_buffer, len);
           m_nativeptr = gcnew native_conditional_unique_ptr<native::DataInput>(m_cache->GetNative()->createDataInput(m_buffer, len));
diff --git a/clicache/src/IGeodeSerializable.hpp b/clicache/src/IGeodeSerializable.hpp
index ce2dc9f..d9612a5 100644
--- a/clicache/src/IGeodeSerializable.hpp
+++ b/clicache/src/IGeodeSerializable.hpp
@@ -20,7 +20,7 @@
 
 #include "geode_defs.hpp"
 #include "begin_native.hpp"
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "end_native.hpp"
 
 using namespace System;
diff --git a/clicache/src/Utils.hpp b/clicache/src/Utils.hpp
index b60bf28..bec8a6e 100644
--- a/clicache/src/Utils.hpp
+++ b/clicache/src/Utils.hpp
@@ -18,7 +18,7 @@
 #pragma once
 
 
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_base.hpp>
 #include "geode_defs.hpp"
 //#include "SystemProperties.hpp"
 //#include "../../impl/NativeWrapper.hpp"
diff --git a/clicache/src/impl/MemoryPressureHandler.hpp b/clicache/src/impl/MemoryPressureHandler.hpp
index 38ce4e0..9ac0a6d 100644
--- a/clicache/src/impl/MemoryPressureHandler.hpp
+++ b/clicache/src/impl/MemoryPressureHandler.hpp
@@ -19,7 +19,7 @@
 
 
 #include "../begin_native.hpp"
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <ExpiryTaskManager.hpp>
 #include "../end_native.hpp"
 
diff --git a/contrib/pdxautoserializer/src/impl/CPPParser/CPPDictionary.hpp b/contrib/pdxautoserializer/src/impl/CPPParser/CPPDictionary.hpp
index f09fb25..dee184a 100644
--- a/contrib/pdxautoserializer/src/impl/CPPParser/CPPDictionary.hpp
+++ b/contrib/pdxautoserializer/src/impl/CPPParser/CPPDictionary.hpp
@@ -52,7 +52,7 @@
 #ifndef CPPDictionary_hpp
 #define CPPDictionary_hpp
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "Dictionary.hpp"
 
 class CPPDictionary : public Dictionary {
@@ -62,7 +62,7 @@ class CPPDictionary : public Dictionary {
 
  protected:
   void dumpSymbol(FILE *f, DictEntry *de) {
-    CPPSymbol *cs ATTR_UNUSED = (CPPSymbol *)de;
+    CPPSymbol *cs = (CPPSymbol *)de;
 
 #ifdef DIAG_MSGES
     if (!(cs->getType() == CPPSymbol::otTypedef ||
diff --git a/cppcache/include/geode/AttributesFactory.hpp b/cppcache/include/geode/AttributesFactory.hpp
index c8142e7..0f38097 100644
--- a/cppcache/include/geode/AttributesFactory.hpp
+++ b/cppcache/include/geode/AttributesFactory.hpp
@@ -23,7 +23,7 @@
 #include <chrono>
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "ExpirationAction.hpp"
 #include "CacheLoader.hpp"
@@ -153,7 +153,7 @@ namespace client {
  * @see Region#createSubregion(String, RegionAttributes)
  */
 
-class CPPCACHE_EXPORT AttributesFactory {
+class _GEODE_EXPORT AttributesFactory {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/AttributesMutator.hpp b/cppcache/include/geode/AttributesMutator.hpp
index d1b4198..de387b7 100644
--- a/cppcache/include/geode/AttributesMutator.hpp
+++ b/cppcache/include/geode/AttributesMutator.hpp
@@ -25,7 +25,7 @@
 #include <memory>
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExpirationAction.hpp"
 
 /**
@@ -58,7 +58,7 @@ class Region;
  * @see RegionAttributes
  * @see AttributesFactory
  */
-class CPPCACHE_EXPORT AttributesMutator {
+class _GEODE_EXPORT AttributesMutator {
  private:
   std::shared_ptr<Region> m_region;
 
diff --git a/cppcache/include/geode/AuthInitialize.hpp b/cppcache/include/geode/AuthInitialize.hpp
index 00427e8..0c4759e 100644
--- a/cppcache/include/geode/AuthInitialize.hpp
+++ b/cppcache/include/geode/AuthInitialize.hpp
@@ -26,7 +26,7 @@
 
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include <memory>
 
 namespace apache {
@@ -46,7 +46,7 @@ class Properties;
  * AuthInitialize object) as the <code>security-client-auth-factory</code>
  * system property.
  */
-class CPPCACHE_EXPORT AuthInitialize {
+class _GEODE_EXPORT AuthInitialize {
  public:
   /**@brief initialize with the given set of security properties
    * and return the credentials for the client as properties.
diff --git a/cppcache/include/geode/Cache.hpp b/cppcache/include/geode/Cache.hpp
index dc93c67..3da05a7 100644
--- a/cppcache/include/geode/Cache.hpp
+++ b/cppcache/include/geode/Cache.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "GeodeCache.hpp"
 #include "Region.hpp"
 #include "DistributedSystem.hpp"
@@ -62,8 +62,8 @@ class RegionFactory;
  * <p>A cache can have multiple root regions, each with a different name.
  *
  */
-class CPPCACHE_EXPORT Cache : public GeodeCache,
-                              public std::enable_shared_from_this<Cache> {
+class _GEODE_EXPORT Cache : public GeodeCache,
+                            public std::enable_shared_from_this<Cache> {
   /**
    * @brief public methods
    */
@@ -269,7 +269,7 @@ class CPPCACHE_EXPORT Cache : public GeodeCache,
   friend class CacheXmlCreation;
   friend class RegionXmlCreation;
 
-  FRIEND_STD_SHARED_PTR(Cache)
+  _GEODE_FRIEND_STD_SHARED_PTR(Cache)
 };
 }  // namespace client
 }  // namespace geode
diff --git a/cppcache/include/geode/CacheAttributes.hpp b/cppcache/include/geode/CacheAttributes.hpp
index c0d2d21..721ad47 100644
--- a/cppcache/include/geode/CacheAttributes.hpp
+++ b/cppcache/include/geode/CacheAttributes.hpp
@@ -26,7 +26,7 @@
 
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
@@ -52,7 +52,7 @@ namespace client {
  */
 class CacheAttributesFactory;
 
-class CPPCACHE_EXPORT CacheAttributes {
+class _GEODE_EXPORT CacheAttributes {
   /**
    * @brief public static methods
    */
diff --git a/cppcache/include/geode/CacheFactory.hpp b/cppcache/include/geode/CacheFactory.hpp
index ce3c921..a6aea19 100644
--- a/cppcache/include/geode/CacheFactory.hpp
+++ b/cppcache/include/geode/CacheFactory.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "DistributedSystem.hpp"
 #include "Cache.hpp"
 #include "CacheAttributes.hpp"
@@ -47,7 +47,7 @@ class AuthInitialize;
  * For the default values for the pool attributes see {@link PoolFactory}.
  * To create additional {@link Pool}s see {@link PoolManager}
  */
-class CPPCACHE_EXPORT CacheFactory {
+class _GEODE_EXPORT CacheFactory {
  public:
   /**
    * To create the instance of {@link CacheFactory}
diff --git a/cppcache/include/geode/CacheListener.hpp b/cppcache/include/geode/CacheListener.hpp
index 72888dc..795330d 100644
--- a/cppcache/include/geode/CacheListener.hpp
+++ b/cppcache/include/geode/CacheListener.hpp
@@ -22,7 +22,7 @@
 
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -76,7 +76,7 @@ class RegionEvent;
  * @see RegionAttributes::getCacheListener
  * @see CacheListenerException
  */
-class CPPCACHE_EXPORT CacheListener {
+class _GEODE_EXPORT CacheListener {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/CacheLoader.hpp b/cppcache/include/geode/CacheLoader.hpp
index a3b41ee..cb8759d 100644
--- a/cppcache/include/geode/CacheLoader.hpp
+++ b/cppcache/include/geode/CacheLoader.hpp
@@ -24,7 +24,7 @@
  * @file
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableKey.hpp"
 #include "Cacheable.hpp"
 
@@ -52,7 +52,7 @@ class Region;
  * @see AttributesFactory::setCacheLoader
  * @see RegionAttributes::getCacheLoader
  */
-class CPPCACHE_EXPORT CacheLoader  {
+class _GEODE_EXPORT CacheLoader {
  public:
   /**Loads a value. Application writers should implement this
    * method to customize the loading of a value. This method is called
diff --git a/cppcache/include/geode/CacheStatistics.hpp b/cppcache/include/geode/CacheStatistics.hpp
index cd38601..40129ae 100644
--- a/cppcache/include/geode/CacheStatistics.hpp
+++ b/cppcache/include/geode/CacheStatistics.hpp
@@ -23,7 +23,7 @@
 #include <atomic>
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -45,7 +45,7 @@ class LocalRegion;
  *@see Region::getStatistics
  *@see RegionEntry::getStatistics
  */
-class CPPCACHE_EXPORT CacheStatistics {
+class _GEODE_EXPORT CacheStatistics {
  public:
   typedef std::chrono::system_clock::time_point time_point;
 
diff --git a/cppcache/include/geode/CacheTransactionManager.hpp b/cppcache/include/geode/CacheTransactionManager.hpp
index 0f9e1f9..76599de 100644
--- a/cppcache/include/geode/CacheTransactionManager.hpp
+++ b/cppcache/include/geode/CacheTransactionManager.hpp
@@ -24,14 +24,14 @@
 
 #include <chrono>
 #include <memory>
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
 namespace client {
 class TransactionId;
 
-class CPPCACHE_EXPORT CacheTransactionManager {
+class _GEODE_EXPORT CacheTransactionManager {
  public:
   /** Creates a new transaction and associates it with the current thread.
    *
diff --git a/cppcache/include/geode/CacheWriter.hpp b/cppcache/include/geode/CacheWriter.hpp
index 8614c7c..53cb0f1 100644
--- a/cppcache/include/geode/CacheWriter.hpp
+++ b/cppcache/include/geode/CacheWriter.hpp
@@ -22,7 +22,7 @@
 
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
@@ -84,7 +84,7 @@ class Region;
  * @see RegionAttributes::getCacheWriter
  * @see AttributesMutator::setCacheWriter
  */
-class CPPCACHE_EXPORT CacheWriter {
+class _GEODE_EXPORT CacheWriter {
  public:
   /**
    * Called before an entry is updated. The entry update is initiated by a
diff --git a/cppcache/include/geode/Cacheable.hpp b/cppcache/include/geode/Cacheable.hpp
index aa4554c..132593b 100644
--- a/cppcache/include/geode/Cacheable.hpp
+++ b/cppcache/include/geode/Cacheable.hpp
@@ -24,7 +24,7 @@
 #include <unordered_map>
 #include <unordered_set>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Serializable.hpp"
 #include "internal/functional.hpp"
 
diff --git a/cppcache/include/geode/CacheableBuiltins.hpp b/cppcache/include/geode/CacheableBuiltins.hpp
index baefc22..325775c 100644
--- a/cppcache/include/geode/CacheableBuiltins.hpp
+++ b/cppcache/include/geode/CacheableBuiltins.hpp
@@ -170,7 +170,7 @@ class CacheableArrayType : public Cacheable {
 
   inline CacheableArrayType(int32_t length) : m_length(length) {
     if (length > 0) {
-      GF_NEW(m_value, TObj[length]);
+      _GEODE_NEW(m_value, TObj[length]);
     }
   }
 
@@ -180,14 +180,14 @@ class CacheableArrayType : public Cacheable {
   inline CacheableArrayType(const TObj* value, int32_t length, bool copy)
       : m_value(nullptr), m_length(length) {
     if (length > 0) {
-      GF_NEW(m_value, TObj[length]);
+      _GEODE_NEW(m_value, TObj[length]);
       copyArray(m_value, value, length);
     }
   }
 
-  virtual ~CacheableArrayType() { GF_SAFE_DELETE_ARRAY(m_value); }
+  virtual ~CacheableArrayType() { _GEODE_SAFE_DELETE_ARRAY(m_value); }
 
-  FRIEND_STD_SHARED_PTR(CacheableArrayType)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableArrayType)
 
  private:
   // Private to disable copy constructor and assignment operator.
@@ -223,7 +223,7 @@ class CacheableArrayType : public Cacheable {
 
   /** Deserialize this object from the given <code>DataInput</code>. */
   virtual void fromData(DataInput& input) override {
-    GF_SAFE_DELETE_ARRAY(m_value);
+    _GEODE_SAFE_DELETE_ARRAY(m_value);
     apache::geode::client::serializer::readObject(input, m_value, m_length);
   }
 
@@ -310,35 +310,25 @@ class CacheableContainerType : public Cacheable, public TBase {
   }
 };
 
-#ifdef _SOLARIS
-#define TEMPLATE_EXPORT template class
-#else
-#ifdef BUILD_CPPCACHE
-#define TEMPLATE_EXPORT template class CPPCACHE_EXPORT
-#else
-#define TEMPLATE_EXPORT extern template class CPPCACHE_EXPORT
-#endif
-#endif
-
 // Disable extern template warning on MSVC compiler
 #ifdef _MSC_VER
 #pragma warning(disable : 4231)
 #endif
 
-#define _GF_CACHEABLE_KEY_TYPE_DEF_(p, k, sz)                    \
-  extern const char tName_##k[];                                 \
-  extern const char tStr_##k[];                                  \
-  TEMPLATE_EXPORT                                                \
-  CacheableKeyType<p, GeodeTypeIds::k, tName_##k, tStr_##k, sz>; \
+#define _GEODE_CACHEABLE_KEY_TYPE_DEF_(p, k, sz)                     \
+  extern const char tName_##k[];                                     \
+  extern const char tStr_##k[];                                      \
+  template class _GEODE_EXPORT                                       \
+      CacheableKeyType<p, GeodeTypeIds::k, tName_##k, tStr_##k, sz>; \
   typedef CacheableKeyType<p, GeodeTypeIds::k, tName_##k, tStr_##k, sz> _##k;
 
 // use a class instead of typedef for bug #283
-#define _GF_CACHEABLE_KEY_TYPE_(p, k, sz)                               \
-  class CPPCACHE_EXPORT k : public _##k {                               \
+#define _GEODE_CACHEABLE_KEY_TYPE_(p, k, sz)                            \
+  class _GEODE_EXPORT k : public _##k {                                 \
    protected:                                                           \
     inline k() : _##k() {}                                              \
     inline k(const p value) : _##k(value) {}                            \
-    FRIEND_STD_SHARED_PTR(k)                                            \
+    _GEODE_FRIEND_STD_SHARED_PTR(k)                                     \
                                                                         \
    public:                                                              \
     /** Factory function registered with serialization registry. */     \
@@ -359,13 +349,13 @@ class CacheableContainerType : public Cacheable, public TBase {
     return k::create(value);                                            \
   }
 
-#define _GF_CACHEABLE_ARRAY_TYPE_DEF_(p, c)               \
-  TEMPLATE_EXPORT CacheableArrayType<p, GeodeTypeIds::c>; \
+#define _GEODE_CACHEABLE_ARRAY_TYPE_DEF_(p, c)                         \
+  template class _GEODE_EXPORT CacheableArrayType<p, GeodeTypeIds::c>; \
   typedef CacheableArrayType<p, GeodeTypeIds::c> _##c;
 
 // use a class instead of typedef for bug #283
-#define _GF_CACHEABLE_ARRAY_TYPE_(p, c)                                       \
-  class CPPCACHE_EXPORT c : public CacheableArrayType<p, GeodeTypeIds::c> {   \
+#define _GEODE_CACHEABLE_ARRAY_TYPE_(p, c)                                    \
+  class _GEODE_EXPORT c : public CacheableArrayType<p, GeodeTypeIds::c> {     \
    protected:                                                                 \
     inline c() : _##c() {}                                                    \
     inline c(int32_t length) : _##c(length) {}                                \
@@ -378,7 +368,7 @@ class CacheableContainerType : public Cacheable, public TBase {
     c(const c& other);                                                        \
     c& operator=(const c& other);                                             \
                                                                               \
-    FRIEND_STD_SHARED_PTR(c)                                                  \
+    _GEODE_FRIEND_STD_SHARED_PTR(c)                                           \
                                                                               \
    public:                                                                    \
     /** Factory function registered with serialization registry. */           \
@@ -409,18 +399,18 @@ class CacheableContainerType : public Cacheable, public TBase {
     }                                                                         \
   };
 
-#define _GF_CACHEABLE_CONTAINER_TYPE_DEF_(p, c)               \
-  TEMPLATE_EXPORT CacheableContainerType<p, GeodeTypeIds::c>; \
+#define _GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(p, c)                         \
+  template class _GEODE_EXPORT CacheableContainerType<p, GeodeTypeIds::c>; \
   typedef CacheableContainerType<p, GeodeTypeIds::c> _##c;
 
 // use a class instead of typedef for bug #283
-#define _GF_CACHEABLE_CONTAINER_TYPE_(p, c)                            \
-  class CPPCACHE_EXPORT c : public _##c {                              \
+#define _GEODE_CACHEABLE_CONTAINER_TYPE_(p, c)                         \
+  class _GEODE_EXPORT c : public _##c {                                \
    protected:                                                          \
     inline c() : _##c() {}                                             \
     inline c(const int32_t n) : _##c(n) {}                             \
                                                                        \
-    FRIEND_STD_SHARED_PTR(c)                                           \
+    _GEODE_FRIEND_STD_SHARED_PTR(c)                                    \
                                                                        \
    public:                                                             \
     /** Factory function registered with serialization registry. */    \
@@ -437,185 +427,191 @@ class CacheableContainerType : public Cacheable, public TBase {
 
 // Instantiations for the built-in CacheableKeys
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(bool, CacheableBoolean, 3);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(bool, CacheableBoolean, 3);
 /**
  * An immutable wrapper for booleans that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(bool, CacheableBoolean, 3);
+_GEODE_CACHEABLE_KEY_TYPE_(bool, CacheableBoolean, 3);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(bool, BooleanArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(bool, BooleanArray);
 /**
  * An immutable wrapper for array of booleans that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(bool, BooleanArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_(bool, BooleanArray);
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(uint8_t, CacheableByte, 15);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(uint8_t, CacheableByte, 15);
 /**
  * An immutable wrapper for bytes that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(uint8_t, CacheableByte, 15);
+_GEODE_CACHEABLE_KEY_TYPE_(uint8_t, CacheableByte, 15);
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(double, CacheableDouble, 63);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(double, CacheableDouble, 63);
 /**
  * An immutable wrapper for doubles that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(double, CacheableDouble, 63);
+_GEODE_CACHEABLE_KEY_TYPE_(double, CacheableDouble, 63);
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(float, CacheableFloat, 63);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(float, CacheableFloat, 63);
 /**
  * An immutable wrapper for floats that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(float, CacheableFloat, 63);
+_GEODE_CACHEABLE_KEY_TYPE_(float, CacheableFloat, 63);
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(int16_t, CacheableInt16, 15);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(int16_t, CacheableInt16, 15);
 /**
  * An immutable wrapper for 16-bit integers that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(int16_t, CacheableInt16, 15);
+_GEODE_CACHEABLE_KEY_TYPE_(int16_t, CacheableInt16, 15);
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(int32_t, CacheableInt32, 15);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(int32_t, CacheableInt32, 15);
 /**
  * An immutable wrapper for 32-bit integers that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(int32_t, CacheableInt32, 15);
+_GEODE_CACHEABLE_KEY_TYPE_(int32_t, CacheableInt32, 15);
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(int64_t, CacheableInt64, 31);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(int64_t, CacheableInt64, 31);
 /**
  * An immutable wrapper for 64-bit integers that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(int64_t, CacheableInt64, 31);
+_GEODE_CACHEABLE_KEY_TYPE_(int64_t, CacheableInt64, 31);
 
-_GF_CACHEABLE_KEY_TYPE_DEF_(char16_t, CacheableCharacter, 3);
+_GEODE_CACHEABLE_KEY_TYPE_DEF_(char16_t, CacheableCharacter, 3);
 /**
  * An immutable wrapper for characters that can serve as
  * a distributable key object for caching.
  */
-_GF_CACHEABLE_KEY_TYPE_(char16_t, CacheableCharacter, 3);
+_GEODE_CACHEABLE_KEY_TYPE_(char16_t, CacheableCharacter, 3);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(char16_t, CharArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(char16_t, CharArray);
 /**
  * An immutable wrapper for array of wide-characters that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(char16_t, CharArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_(char16_t, CharArray);
 
 // Instantiations for array built-in Cacheables
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(int8_t, CacheableBytes);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(int8_t, CacheableBytes);
 /**
  * An immutable wrapper for byte arrays that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(int8_t, CacheableBytes);
+_GEODE_CACHEABLE_ARRAY_TYPE_(int8_t, CacheableBytes);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(double, CacheableDoubleArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(double, CacheableDoubleArray);
 /**
  * An immutable wrapper for array of doubles that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(double, CacheableDoubleArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_(double, CacheableDoubleArray);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(float, CacheableFloatArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(float, CacheableFloatArray);
 /**
  * An immutable wrapper for array of floats that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(float, CacheableFloatArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_(float, CacheableFloatArray);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(int16_t, CacheableInt16Array);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(int16_t, CacheableInt16Array);
 /**
  * An immutable wrapper for array of 16-bit integers that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(int16_t, CacheableInt16Array);
+_GEODE_CACHEABLE_ARRAY_TYPE_(int16_t, CacheableInt16Array);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(int32_t, CacheableInt32Array);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(int32_t, CacheableInt32Array);
 /**
  * An immutable wrapper for array of 32-bit integers that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(int32_t, CacheableInt32Array);
+_GEODE_CACHEABLE_ARRAY_TYPE_(int32_t, CacheableInt32Array);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(int64_t, CacheableInt64Array);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(int64_t, CacheableInt64Array);
 /**
  * An immutable wrapper for array of 64-bit integers that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(int64_t, CacheableInt64Array);
+_GEODE_CACHEABLE_ARRAY_TYPE_(int64_t, CacheableInt64Array);
 
-_GF_CACHEABLE_ARRAY_TYPE_DEF_(std::shared_ptr<CacheableString>, CacheableStringArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_DEF_(std::shared_ptr<CacheableString>,
+                                 CacheableStringArray);
 /**
  * An immutable wrapper for array of strings that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_ARRAY_TYPE_(std::shared_ptr<CacheableString>,
-                          CacheableStringArray);
+_GEODE_CACHEABLE_ARRAY_TYPE_(std::shared_ptr<CacheableString>,
+                             CacheableStringArray);
 
 // Instantiations for container types (Vector/HashMap/HashSet) Cacheables
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
-                                  CacheableVector);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
+                                     CacheableVector);
 /**
  * A mutable <code>Cacheable</code> vector wrapper that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>, CacheableVector);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>,
+                                 CacheableVector);
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(HashMapOfCacheable, CacheableHashMap);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(HashMapOfCacheable, CacheableHashMap);
 /**
  * A mutable <code>CacheableKey</code> to <code>Serializable</code>
  * hash map that can serve as a distributable object for caching.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(HashMapOfCacheable, CacheableHashMap);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(HashMapOfCacheable, CacheableHashMap);
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(HashSetOfCacheableKey, CacheableHashSet);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(HashSetOfCacheableKey, CacheableHashSet);
 /**
  * A mutable <code>CacheableKey</code> hash set wrapper that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(HashSetOfCacheableKey, CacheableHashSet);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(HashSetOfCacheableKey, CacheableHashSet);
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
-                                  CacheableArrayList);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
+                                     CacheableArrayList);
 /**
  * A mutable <code>Cacheable</code> array list wrapper that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>, CacheableArrayList);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>,
+                                 CacheableArrayList);
 
 // linketlist for JSON formattor issue
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
-                                  CacheableLinkedList);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
+                                     CacheableLinkedList);
 /**
  * A mutable <code>Cacheable</code> array list wrapper that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>, CacheableLinkedList);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>,
+                                 CacheableLinkedList);
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
-                                  CacheableStack);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(std::vector<std::shared_ptr<Cacheable>>,
+                                     CacheableStack);
 /**
  * A mutable <code>Cacheable</code> stack wrapper that can serve as
  * a distributable object for caching.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>, CacheableStack);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(std::vector<std::shared_ptr<Cacheable>>,
+                                 CacheableStack);
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(HashMapOfCacheable, CacheableHashTable);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(HashMapOfCacheable, CacheableHashTable);
 /**
  * A mutable <code>CacheableKey</code> to <code>Serializable</code>
  * hash map that can serve as a distributable object for caching.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(HashMapOfCacheable, CacheableHashTable);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(HashMapOfCacheable, CacheableHashTable);
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(HashMapOfCacheable, CacheableIdentityHashMap);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(HashMapOfCacheable,
+                                     CacheableIdentityHashMap);
 /**
  * A mutable <code>CacheableKey</code> to <code>Serializable</code>
  * hash map that can serve as a distributable object for caching. This is
@@ -623,10 +619,10 @@ _GF_CACHEABLE_CONTAINER_TYPE_DEF_(HashMapOfCacheable, CacheableIdentityHashMap);
  * to <code>CacheableHashMap</code> i.e. does not provide the semantics of
  * java <code>IdentityHashMap</code>.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(HashMapOfCacheable, CacheableIdentityHashMap);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(HashMapOfCacheable, CacheableIdentityHashMap);
 
-_GF_CACHEABLE_CONTAINER_TYPE_DEF_(HashSetOfCacheableKey,
-                                  CacheableLinkedHashSet);
+_GEODE_CACHEABLE_CONTAINER_TYPE_DEF_(HashSetOfCacheableKey,
+                                     CacheableLinkedHashSet);
 /**
  * A mutable <code>CacheableKey</code> hash set wrapper that can serve as
  * a distributable object for caching. This is provided for compability
@@ -634,7 +630,7 @@ _GF_CACHEABLE_CONTAINER_TYPE_DEF_(HashSetOfCacheableKey,
  * <code>CacheableHashSet</code> i.e. does not provide the predictable
  * iteration semantics of java <code>LinkedHashSet</code>.
  */
-_GF_CACHEABLE_CONTAINER_TYPE_(HashSetOfCacheableKey, CacheableLinkedHashSet);
+_GEODE_CACHEABLE_CONTAINER_TYPE_(HashSetOfCacheableKey, CacheableLinkedHashSet);
 
 template <>
 inline std::shared_ptr<CacheableKey> CacheableKey::create(int32_t value) {
diff --git a/cppcache/include/geode/CacheableDate.hpp b/cppcache/include/geode/CacheableDate.hpp
index 85ff895..f19dac3 100644
--- a/cppcache/include/geode/CacheableDate.hpp
+++ b/cppcache/include/geode/CacheableDate.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_CACHEABLEDATE_H_
 #define GEODE_CACHEABLEDATE_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableKey.hpp"
 #include "CacheableString.hpp"
 #include "GeodeTypeIds.hpp"
@@ -41,7 +41,7 @@ namespace client {
  * can serve as a distributable key object for caching as well as being a date
  * value.
  */
-class CPPCACHE_EXPORT CacheableDate : public CacheableKey {
+class _GEODE_EXPORT CacheableDate : public CacheableKey {
  private:
   /**
    * Milliseconds since January 1, 1970, 00:00:00 GMT to be consistent with Java
@@ -149,7 +149,7 @@ class CPPCACHE_EXPORT CacheableDate : public CacheableKey {
   void operator=(const CacheableDate& other);
   CacheableDate(const CacheableDate& other);
 
-  FRIEND_STD_SHARED_PTR(CacheableDate)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableDate)
 };
 
 inline std::shared_ptr<CacheableKey> createKey(
diff --git a/cppcache/include/geode/CacheableEnum.hpp b/cppcache/include/geode/CacheableEnum.hpp
index 5e39339..35f35b3 100644
--- a/cppcache/include/geode/CacheableEnum.hpp
+++ b/cppcache/include/geode/CacheableEnum.hpp
@@ -27,7 +27,7 @@
 #include "CacheableKey.hpp"
 #include "CacheableString.hpp"
 #include "GeodeTypeIds.hpp"
-#include "geode_base.hpp"
+#include "internal/geode_base.hpp"
 
 namespace apache {
 namespace geode {
@@ -51,7 +51,7 @@ class DataInput;
 class DataOutput;
 class Serializable;
 
-class CPPCACHE_EXPORT CacheableEnum : public CacheableKey {
+class _GEODE_EXPORT CacheableEnum : public CacheableKey {
  private:
   std::string m_enumClassName;
   std::string m_enumName;
@@ -148,7 +148,7 @@ class CPPCACHE_EXPORT CacheableEnum : public CacheableKey {
   void operator=(const CacheableEnum& other);
   CacheableEnum(const CacheableEnum& other);
 
-  FRIEND_STD_SHARED_PTR(CacheableEnum)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableEnum)
 };
 
 }  // namespace client
diff --git a/cppcache/include/geode/CacheableFileName.hpp b/cppcache/include/geode/CacheableFileName.hpp
index effd86a..c24be44 100644
--- a/cppcache/include/geode/CacheableFileName.hpp
+++ b/cppcache/include/geode/CacheableFileName.hpp
@@ -26,7 +26,7 @@
 
 #include "CacheableKey.hpp"
 #include "CacheableString.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /** @file
  */
@@ -43,7 +43,7 @@ class DataInput;
 class DataOutput;
 class Serializable;
 
-class CPPCACHE_EXPORT CacheableFileName : public CacheableString {
+class _GEODE_EXPORT CacheableFileName : public CacheableString {
  public:
   /**
    *@brief serialize this object
@@ -90,7 +90,7 @@ class CPPCACHE_EXPORT CacheableFileName : public CacheableString {
   virtual int32_t hashcode() const override;
 
  protected:
-  FRIEND_STD_SHARED_PTR(CacheableFileName)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableFileName)
 
   /** Default constructor. */
   inline CacheableFileName() : CacheableString(), m_hashcode(0) {}
diff --git a/cppcache/include/geode/CacheableKey.hpp b/cppcache/include/geode/CacheableKey.hpp
index bcbeea9..8aac592 100644
--- a/cppcache/include/geode/CacheableKey.hpp
+++ b/cppcache/include/geode/CacheableKey.hpp
@@ -24,7 +24,7 @@
 #include <unordered_map>
 #include <unordered_set>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Cacheable.hpp"
 #include "internal/functional.hpp"
 
@@ -37,7 +37,7 @@ namespace geode {
 namespace client {
 
 /** Represents a cacheable key */
-class CPPCACHE_EXPORT CacheableKey : public Cacheable {
+class _GEODE_EXPORT CacheableKey : public Cacheable {
  protected:
   /** Constructor */
   CacheableKey() : Cacheable() {}
@@ -45,7 +45,7 @@ class CPPCACHE_EXPORT CacheableKey : public Cacheable {
   /** Destructor */
   virtual ~CacheableKey() {}
 
-  FRIEND_STD_SHARED_PTR(CacheableKey)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableKey)
 
  public:
   /** return true if this key matches other. */
diff --git a/cppcache/include/geode/CacheableKeys.hpp b/cppcache/include/geode/CacheableKeys.hpp
index 195ed32..a717dce 100644
--- a/cppcache/include/geode/CacheableKeys.hpp
+++ b/cppcache/include/geode/CacheableKeys.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
diff --git a/cppcache/include/geode/CacheableObjectArray.hpp b/cppcache/include/geode/CacheableObjectArray.hpp
index d1fe534..170e295 100644
--- a/cppcache/include/geode/CacheableObjectArray.hpp
+++ b/cppcache/include/geode/CacheableObjectArray.hpp
@@ -23,7 +23,7 @@
 #include <vector>
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Cacheable.hpp"
 
 /** @file
@@ -41,7 +41,7 @@ class DataInput;
 class DataOutput;
 class Serializable;
 
-class CPPCACHE_EXPORT CacheableObjectArray
+class _GEODE_EXPORT CacheableObjectArray
     : public Cacheable,
       public std::vector<std::shared_ptr<Cacheable>> {
  public:
@@ -105,7 +105,7 @@ class CPPCACHE_EXPORT CacheableObjectArray
   CacheableObjectArray& operator=(const CacheableObjectArray& other) = delete;
   CacheableObjectArray(const CacheableObjectArray& other) = delete;
 
-  FRIEND_STD_SHARED_PTR(CacheableObjectArray)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableObjectArray)
 };
 
 }  // namespace client
diff --git a/cppcache/include/geode/CacheableString.hpp b/cppcache/include/geode/CacheableString.hpp
index 0d692b4..b530f46 100644
--- a/cppcache/include/geode/CacheableString.hpp
+++ b/cppcache/include/geode/CacheableString.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_CACHEABLESTRING_H_
 #define GEODE_CACHEABLESTRING_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableKey.hpp"
 #include "GeodeTypeIds.hpp"
 
@@ -35,13 +35,13 @@ namespace client {
  * Implement a immutable C string wrapper that can serve as a distributable
  * key object for caching as well as being a string value.
  */
-class CPPCACHE_EXPORT CacheableString : public CacheableKey {
+class _GEODE_EXPORT CacheableString : public CacheableKey {
  protected:
   std::string m_str;
   int8_t m_type;
   mutable int m_hashcode;
 
-  FRIEND_STD_SHARED_PTR(CacheableString)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableString)
 
  public:
   /**
diff --git a/cppcache/include/geode/CacheableUndefined.hpp b/cppcache/include/geode/CacheableUndefined.hpp
index 612919e..b4ad91e 100644
--- a/cppcache/include/geode/CacheableUndefined.hpp
+++ b/cppcache/include/geode/CacheableUndefined.hpp
@@ -22,7 +22,7 @@
 
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Cacheable.hpp"
 
 /** @file
@@ -39,7 +39,7 @@ class DataInput;
 class DataOutput;
 class Serializable;
 
-class CPPCACHE_EXPORT CacheableUndefined : public Cacheable {
+class _GEODE_EXPORT CacheableUndefined : public Cacheable {
  public:
   /**
    *@brief serialize this object
@@ -96,7 +96,7 @@ class CPPCACHE_EXPORT CacheableUndefined : public Cacheable {
   CacheableUndefined& operator=(const CacheableUndefined& other) = delete;
   CacheableUndefined(const CacheableUndefined& other) = delete;
 
-  FRIEND_STD_SHARED_PTR(CacheableUndefined)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableUndefined)
 };
 
 }  // namespace client
diff --git a/cppcache/include/geode/CqAttributes.hpp b/cppcache/include/geode/CqAttributes.hpp
index 805aa42..128a4b4 100644
--- a/cppcache/include/geode/CqAttributes.hpp
+++ b/cppcache/include/geode/CqAttributes.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include <vector>
 
 #include "CqListener.hpp"
@@ -46,7 +46,7 @@ namespace client {
  *
  * For compatibility rules and default values, see {@link CqAttributesFactory}.
  */
-class CPPCACHE_EXPORT CqAttributes {
+class _GEODE_EXPORT CqAttributes {
  public:
   typedef std::vector<std::shared_ptr<CqListener>> listener_container_type;
 
diff --git a/cppcache/include/geode/CqAttributesFactory.hpp b/cppcache/include/geode/CqAttributesFactory.hpp
index 6a7bdd8..3d07131 100644
--- a/cppcache/include/geode/CqAttributesFactory.hpp
+++ b/cppcache/include/geode/CqAttributesFactory.hpp
@@ -24,7 +24,7 @@
 
 #include "CqAttributes.hpp"
 #include "CqListener.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -57,7 +57,7 @@ namespace client {
 class CqAttributes;
 class CqListener;
 
-class CPPCACHE_EXPORT CqAttributesFactory  {
+class _GEODE_EXPORT CqAttributesFactory {
  public:
   /**
    * Creates a new instance of AttributesFactory ready to create a
diff --git a/cppcache/include/geode/CqAttributesMutator.hpp b/cppcache/include/geode/CqAttributesMutator.hpp
index 6bbf29a..b41e9a3 100644
--- a/cppcache/include/geode/CqAttributesMutator.hpp
+++ b/cppcache/include/geode/CqAttributesMutator.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include <vector>
 #include <memory>
 /**
@@ -39,7 +39,7 @@ class CqListener;
  * of certain CQ attributes after the CQ has been created.
  *
  */
-class CPPCACHE_EXPORT CqAttributesMutator {
+class _GEODE_EXPORT CqAttributesMutator {
  public:
   /**
    * Adds a CQ listener to the end of the list of CQ listeners on this CqQuery.
diff --git a/cppcache/include/geode/CqEvent.hpp b/cppcache/include/geode/CqEvent.hpp
index 8758833..d8e6f68 100644
--- a/cppcache/include/geode/CqEvent.hpp
+++ b/cppcache/include/geode/CqEvent.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Exception.hpp"
 #include "CqOperation.hpp"
 #include "Cacheable.hpp"
@@ -50,7 +50,7 @@ class CqQuery;
  * event.
  * The CqEvent is not an extension of CacheEvent.
  */
-class CPPCACHE_EXPORT CqEvent {
+class _GEODE_EXPORT CqEvent {
  public:
   CqEvent() {}
 
diff --git a/cppcache/include/geode/CqListener.hpp b/cppcache/include/geode/CqListener.hpp
index 6ee6331..e2b1fc8 100644
--- a/cppcache/include/geode/CqListener.hpp
+++ b/cppcache/include/geode/CqListener.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CqEvent.hpp"
 
 /**
@@ -42,7 +42,7 @@ class CacheListener;
  * is an event satisfied by the CQ and the other called when there is an
  * error during CQ processing.
  */
-class CPPCACHE_EXPORT CqListener  {
+class _GEODE_EXPORT CqListener {
  public:
   /**
    * This method is invoked when an event is occurred on the region
diff --git a/cppcache/include/geode/CqOperation.hpp b/cppcache/include/geode/CqOperation.hpp
index a779de8..38b8fbc 100644
--- a/cppcache/include/geode/CqOperation.hpp
+++ b/cppcache/include/geode/CqOperation.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -33,7 +33,7 @@ namespace client {
  * @class Operation CqOperation.hpp
  * Enumerated type for Operation actions.
  */
-class CPPCACHE_EXPORT CqOperation {
+class _GEODE_EXPORT CqOperation {
  public:
   // types of operation CORESPONDING TO THE ONES in geode.cache.Operation
 
diff --git a/cppcache/include/geode/CqQuery.hpp b/cppcache/include/geode/CqQuery.hpp
index f913e49..3cf8ccf 100644
--- a/cppcache/include/geode/CqQuery.hpp
+++ b/cppcache/include/geode/CqQuery.hpp
@@ -22,7 +22,7 @@
 
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 #include "CqResults.hpp"
 #include "CqStatistics.hpp"
@@ -52,7 +52,7 @@ class Query;
  * operate on the same <code>CqQuery</code> object concurrently rather should
  * have their own <code>CqQuery</code> objects.
  */
-class CPPCACHE_EXPORT CqQuery  {
+class _GEODE_EXPORT CqQuery {
  public:
   /**
    * Get the query string provided when a new Query was created from a
diff --git a/cppcache/include/geode/CqResults.hpp b/cppcache/include/geode/CqResults.hpp
index fea9a0c..f4af53a 100644
--- a/cppcache/include/geode/CqResults.hpp
+++ b/cppcache/include/geode/CqResults.hpp
@@ -24,7 +24,7 @@
  * @file
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "Serializable.hpp"
 #include "CacheableBuiltins.hpp"
@@ -40,7 +40,7 @@ namespace client {
  * A CqResults is obtained by executing a Query on the server.
  * This will be a StructSet.
  */
-class CPPCACHE_EXPORT CqResults : public SelectResults {};
+class _GEODE_EXPORT CqResults : public SelectResults {};
 
 }  // namespace client
 }  // namespace geode
diff --git a/cppcache/include/geode/CqServiceStatistics.hpp b/cppcache/include/geode/CqServiceStatistics.hpp
index 085dfcb..0813925 100644
--- a/cppcache/include/geode/CqServiceStatistics.hpp
+++ b/cppcache/include/geode/CqServiceStatistics.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -36,7 +36,7 @@ namespace client {
  * This class provides methods to get aggregate statistical information
  * about the CQs of a client.
  */
-class CPPCACHE_EXPORT CqServiceStatistics  {
+class _GEODE_EXPORT CqServiceStatistics {
  public:
   /**
    * Get the number of CQs currently active.
diff --git a/cppcache/include/geode/CqState.hpp b/cppcache/include/geode/CqState.hpp
index 80f7a1f..6983ebd 100644
--- a/cppcache/include/geode/CqState.hpp
+++ b/cppcache/include/geode/CqState.hpp
@@ -22,7 +22,7 @@
 
 #include <iosfwd>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -38,7 +38,7 @@ namespace client {
  * This interface gives information on the state of a CqQuery.
  * It is provided by the getState method of the CqQuery instance.
  */
-class CPPCACHE_EXPORT CqState {
+class _GEODE_EXPORT CqState {
  public:
   // corresponding to geode.cache.query.internal.CqStateImpl
   typedef enum {
diff --git a/cppcache/include/geode/CqStatistics.hpp b/cppcache/include/geode/CqStatistics.hpp
index ab6659f..ba01530 100644
--- a/cppcache/include/geode/CqStatistics.hpp
+++ b/cppcache/include/geode/CqStatistics.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -41,7 +41,7 @@ namespace client {
  * represented by the CqQuery object.
  *
  */
-class CPPCACHE_EXPORT CqStatistics {
+class _GEODE_EXPORT CqStatistics {
  public:
   /**
    * Get number of Insert events qualified by this CQ.
diff --git a/cppcache/include/geode/CqStatusListener.hpp b/cppcache/include/geode/CqStatusListener.hpp
index 701413b..7a05da8 100644
--- a/cppcache/include/geode/CqStatusListener.hpp
+++ b/cppcache/include/geode/CqStatusListener.hpp
@@ -34,7 +34,7 @@ namespace client {
 * @since 7.0
 */
 
-class CPPCACHE_EXPORT CqStatusListener : public CqListener {
+class _GEODE_EXPORT CqStatusListener : public CqListener {
  public:
   /**
   * Called when the cq loses connection with all servers
diff --git a/cppcache/include/geode/DataInput.hpp b/cppcache/include/geode/DataInput.hpp
index 221948e..33060b9 100644
--- a/cppcache/include/geode/DataInput.hpp
+++ b/cppcache/include/geode/DataInput.hpp
@@ -26,7 +26,7 @@
 #include <string>
 #include <vector>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "GeodeTypeIds.hpp"
 #include "ExceptionTypes.hpp"
@@ -35,13 +35,7 @@
  * @file
  */
 
-#if GF_DEBUG_ASSERTS == 1
-#define DINP_THROWONERROR_DEFAULT true
-#else
-#define DINP_THROWONERROR_DEFAULT false
-#endif
-
-#define GEODE_CHECK_BUFFER_SIZE(x) _checkBufferSize(x, __LINE__)
+#define _GEODE_CHECK_BUFFER_SIZE(x) _checkBufferSize(x, __LINE__)
 
 namespace apache {
 namespace geode {
@@ -63,7 +57,7 @@ class DataInputInternal;
  * @remarks None of the output parameters in the methods below can be nullptr
  *   unless otherwise noted.
  */
-class CPPCACHE_EXPORT DataInput {
+class _GEODE_EXPORT DataInput {
  public:
   /**
    * Read a signed byte from the <code>DataInput</code>.
@@ -71,7 +65,7 @@ class CPPCACHE_EXPORT DataInput {
    * @@return signed byte read from stream
    */
   inline int8_t read() {
-    GEODE_CHECK_BUFFER_SIZE(1);
+    _GEODE_CHECK_BUFFER_SIZE(1);
     return readNoCheck();
   }
 
@@ -81,7 +75,7 @@ class CPPCACHE_EXPORT DataInput {
    * @param value output parameter to hold the boolean read from stream
    */
   inline bool readBoolean() {
-    GEODE_CHECK_BUFFER_SIZE(1);
+    _GEODE_CHECK_BUFFER_SIZE(1);
     return *(m_buf++) == 1 ? true : false;
   }
 
@@ -97,7 +91,7 @@ class CPPCACHE_EXPORT DataInput {
    */
   inline void readBytesOnly(uint8_t* buffer, uint32_t len) {
     if (len > 0) {
-      GEODE_CHECK_BUFFER_SIZE(len);
+      _GEODE_CHECK_BUFFER_SIZE(len);
       std::memcpy(buffer, m_buf, len);
       m_buf += len;
     }
@@ -115,7 +109,7 @@ class CPPCACHE_EXPORT DataInput {
    */
   inline void readBytesOnly(int8_t* buffer, uint32_t len) {
     if (len > 0) {
-      GEODE_CHECK_BUFFER_SIZE(len);
+      _GEODE_CHECK_BUFFER_SIZE(len);
       std::memcpy(buffer, m_buf, len);
       m_buf += len;
     }
@@ -136,8 +130,8 @@ class CPPCACHE_EXPORT DataInput {
     *len = length;
     uint8_t* buffer = nullptr;
     if (length > 0) {
-      GEODE_CHECK_BUFFER_SIZE(length);
-      GF_NEW(buffer, uint8_t[length]);
+      _GEODE_CHECK_BUFFER_SIZE(length);
+      _GEODE_NEW(buffer, uint8_t[length]);
       std::memcpy(buffer, m_buf, length);
       m_buf += length;
     }
@@ -159,8 +153,8 @@ class CPPCACHE_EXPORT DataInput {
     *len = length;
     int8_t* buffer = nullptr;
     if (length > 0) {
-      GEODE_CHECK_BUFFER_SIZE(length);
-      GF_NEW(buffer, int8_t[length]);
+      _GEODE_CHECK_BUFFER_SIZE(length);
+      _GEODE_NEW(buffer, int8_t[length]);
       std::memcpy(buffer, m_buf, length);
       m_buf += length;
     }
@@ -173,7 +167,7 @@ class CPPCACHE_EXPORT DataInput {
    * @return 16-bit signed integer read from stream
    */
   inline int16_t readInt16() {
-    GEODE_CHECK_BUFFER_SIZE(2);
+    _GEODE_CHECK_BUFFER_SIZE(2);
     return readInt16NoCheck();
   }
 
@@ -184,7 +178,7 @@ class CPPCACHE_EXPORT DataInput {
    *   read from stream
    */
   inline int32_t readInt32() {
-    GEODE_CHECK_BUFFER_SIZE(4);
+    _GEODE_CHECK_BUFFER_SIZE(4);
     int32_t tmp = *(m_buf++);
     tmp = (tmp << 8) | *(m_buf++);
     tmp = (tmp << 8) | *(m_buf++);
@@ -199,7 +193,7 @@ class CPPCACHE_EXPORT DataInput {
    *   read from stream
    */
   inline int64_t readInt64() {
-    GEODE_CHECK_BUFFER_SIZE(8);
+    _GEODE_CHECK_BUFFER_SIZE(8);
     int64_t tmp;
     if (sizeof(long) == 8) {
       tmp = *(m_buf++);
@@ -281,7 +275,7 @@ class CPPCACHE_EXPORT DataInput {
    * @param value output parameter to hold the float read from stream
    */
   inline float readFloat() {
-    GEODE_CHECK_BUFFER_SIZE(4);
+    _GEODE_CHECK_BUFFER_SIZE(4);
     union float_uint32_t {
       float f;
       uint32_t u;
@@ -297,7 +291,7 @@ class CPPCACHE_EXPORT DataInput {
    *   read from stream
    */
   inline double readDouble() {
-    GEODE_CHECK_BUFFER_SIZE(8);
+    _GEODE_CHECK_BUFFER_SIZE(8);
     union double_uint64_t {
       double d;
       uint64_t ll;
@@ -357,8 +351,7 @@ class CPPCACHE_EXPORT DataInput {
    * @see staticCast
    */
   template <class PTR>
-  inline std::shared_ptr<PTR> readObject(
-      bool throwOnError = DINP_THROWONERROR_DEFAULT) {
+  inline std::shared_ptr<PTR> readObject(bool throwOnError = false) {
     auto sPtr = readObjectInternal();
     if (throwOnError) {
       return std::dynamic_pointer_cast<PTR>(sPtr);
@@ -464,8 +457,8 @@ class CPPCACHE_EXPORT DataInput {
     } else {
       int8_t** tmpArray;
       int32_t* tmpLengtharr;
-      GF_NEW(tmpArray, int8_t * [arrLen]);
-      GF_NEW(tmpLengtharr, int32_t[arrLen]);
+      _GEODE_NEW(tmpArray, int8_t * [arrLen]);
+      _GEODE_NEW(tmpLengtharr, int32_t[arrLen]);
       for (int i = 0; i < arrLen; i++) {
         readBytes(&tmpArray[i], &tmpLengtharr[i]);
       }
@@ -550,7 +543,7 @@ class CPPCACHE_EXPORT DataInput {
 
   static uint8_t* getBufferCopy(const uint8_t* from, uint32_t length) {
     uint8_t* result;
-    GF_NEW(result, uint8_t[length]);
+    _GEODE_NEW(result, uint8_t[length]);
     std::memcpy(result, from, length);
 
     return result;
@@ -560,7 +553,7 @@ class CPPCACHE_EXPORT DataInput {
 
   uint8_t* getBufferCopyFrom(const uint8_t* from, uint32_t length) {
     uint8_t* result;
-    GF_NEW(result, uint8_t[length]);
+    _GEODE_NEW(result, uint8_t[length]);
     std::memcpy(result, from, length);
 
     return result;
@@ -673,7 +666,7 @@ class CPPCACHE_EXPORT DataInput {
   template <class CharT, class... Tail>
   inline void readAscii(std::basic_string<CharT, Tail...>& value,
                         size_t length) {
-    GEODE_CHECK_BUFFER_SIZE(static_cast<int32_t>(length));
+    _GEODE_CHECK_BUFFER_SIZE(static_cast<int32_t>(length));
     value.reserve(length);
     while (length-- > 0) {
       // blindly assumes ASCII so mask off 7 bits
@@ -699,7 +692,7 @@ class CPPCACHE_EXPORT DataInput {
   inline void readJavaModifiedUtf8(
       std::basic_string<char16_t, _Traits, _Allocator>& value) {
     uint16_t length = readInt16();
-    GEODE_CHECK_BUFFER_SIZE(length);
+    _GEODE_CHECK_BUFFER_SIZE(length);
     value.reserve(length);
     const auto end = m_buf + length;
     while (m_buf < end) {
@@ -736,7 +729,7 @@ class CPPCACHE_EXPORT DataInput {
   inline void readUtf16Huge(
       std::basic_string<char16_t, _Traits, _Allocator>& value) {
     uint32_t length = readInt32();
-    GEODE_CHECK_BUFFER_SIZE(length);
+    _GEODE_CHECK_BUFFER_SIZE(length);
     value.reserve(length);
     while (length-- > 0) {
       value += readInt16NoCheck();
diff --git a/cppcache/include/geode/DataOutput.hpp b/cppcache/include/geode/DataOutput.hpp
index 4d206b7..18344a2 100644
--- a/cppcache/include/geode/DataOutput.hpp
+++ b/cppcache/include/geode/DataOutput.hpp
@@ -25,7 +25,7 @@
 #include <cstdlib>
 #include <algorithm>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "Serializable.hpp"
 #include "CacheableString.hpp"
@@ -46,7 +46,7 @@ class CacheImpl;
  * strings, <code>Serializable</code> objects to a byte stream.
  * This class is intentionally not thread safe.
  */
-class CPPCACHE_EXPORT DataOutput {
+class _GEODE_EXPORT DataOutput {
  public:
   /**
    * Write an unsigned byte to the <code>DataOutput</code>.
@@ -491,13 +491,13 @@ class CPPCACHE_EXPORT DataOutput {
 
   uint8_t* getBufferCopyFrom(const uint8_t* from, uint32_t length) {
     uint8_t* result;
-    GF_NEW(result, uint8_t[length]);
+    _GEODE_NEW(result, uint8_t[length]);
     std::memcpy(result, from, length);
 
     return result;
   }
 
-  static void safeDelete(uint8_t* src) { GF_SAFE_DELETE(src); }
+  static void safeDelete(uint8_t* src) { _GEODE_SAFE_DELETE(src); }
 
   virtual const Cache* getCache();
 
diff --git a/cppcache/include/geode/DefaultResultCollector.hpp b/cppcache/include/geode/DefaultResultCollector.hpp
index 4de3ba9..d7fdb37 100644
--- a/cppcache/include/geode/DefaultResultCollector.hpp
+++ b/cppcache/include/geode/DefaultResultCollector.hpp
@@ -25,7 +25,7 @@
 #include <mutex>
 #include <condition_variable>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 #include "CacheableBuiltins.hpp"
 #include "ResultCollector.hpp"
@@ -38,7 +38,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT DefaultResultCollector : public ResultCollector {
+class _GEODE_EXPORT DefaultResultCollector : public ResultCollector {
  public:
   DefaultResultCollector();
   virtual ~DefaultResultCollector() noexcept;
diff --git a/cppcache/include/geode/Delta.hpp b/cppcache/include/geode/Delta.hpp
index 93fdca8..2ef1127 100644
--- a/cppcache/include/geode/Delta.hpp
+++ b/cppcache/include/geode/Delta.hpp
@@ -26,7 +26,7 @@
 
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
@@ -48,7 +48,7 @@ class Cache;
 class DataInput;
 class DataOutput;
 
-class CPPCACHE_EXPORT Delta {
+class _GEODE_EXPORT Delta {
  public:
   /**
    * <code>hasDelta( )</code> is invoked by Geode during <code>Region::put(
diff --git a/cppcache/include/geode/DiskPolicyType.hpp b/cppcache/include/geode/DiskPolicyType.hpp
index 53d11f3..3879278 100644
--- a/cppcache/include/geode/DiskPolicyType.hpp
+++ b/cppcache/include/geode/DiskPolicyType.hpp
@@ -23,7 +23,7 @@
 #include <iosfwd>
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -38,7 +38,7 @@ namespace client {
  * @see RegionAttributes::getDiskPolicy
  * @see AttributesFactory::setDiskPolicy
  */
-class CPPCACHE_EXPORT DiskPolicyType {
+class _GEODE_EXPORT DiskPolicyType {
   // public static methods
  public:
   /**
diff --git a/cppcache/include/geode/DistributedSystem.hpp b/cppcache/include/geode/DistributedSystem.hpp
index f9e4fd2..393bc14 100644
--- a/cppcache/include/geode/DistributedSystem.hpp
+++ b/cppcache/include/geode/DistributedSystem.hpp
@@ -25,7 +25,7 @@
  */
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "Properties.hpp"
 
@@ -51,7 +51,7 @@ class CacheRegionHelper;
 class DiffieHellman;
 class TcrConnection;
 
-class CPPCACHE_EXPORT DistributedSystem {
+class _GEODE_EXPORT DistributedSystem {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/EntryEvent.hpp b/cppcache/include/geode/EntryEvent.hpp
index f9c60fb..52c2ca8 100644
--- a/cppcache/include/geode/EntryEvent.hpp
+++ b/cppcache/include/geode/EntryEvent.hpp
@@ -25,7 +25,7 @@
 #include "CacheableKey.hpp"
 #include "Region.hpp"
 #include "geode/Cacheable.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /** @file
 */
@@ -40,7 +40,7 @@ class CacheableKey;
 class Region;
 class Serializable;
 
-class CPPCACHE_EXPORT EntryEvent {
+class _GEODE_EXPORT EntryEvent {
  protected:
   std::shared_ptr<Region> m_region;      /**< Region */
   std::shared_ptr<CacheableKey> m_key;   /**< Cacheable key */
diff --git a/cppcache/include/geode/Exception.hpp b/cppcache/include/geode/Exception.hpp
index 2804f8c..38bcbcb 100644
--- a/cppcache/include/geode/Exception.hpp
+++ b/cppcache/include/geode/Exception.hpp
@@ -24,7 +24,7 @@
 #include <stdexcept>
 #include <unordered_map>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "internal/functional.hpp"
 
 /**
@@ -45,7 +45,7 @@ class StackTrace;
  * @class Exception Exception.hpp
  * A description of an exception that occurred during a cache operation.
  */
-class CPPCACHE_EXPORT Exception : public std::exception {
+class _GEODE_EXPORT Exception : public std::exception {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/ExceptionTypes.hpp b/cppcache/include/geode/ExceptionTypes.hpp
index 1c6f505..7bb8208 100644
--- a/cppcache/include/geode/ExceptionTypes.hpp
+++ b/cppcache/include/geode/ExceptionTypes.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_EXCEPTIONTYPES_H_
 #define GEODE_EXCEPTIONTYPES_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "geode/Exception.hpp"
 
 namespace apache {
@@ -37,8 +37,8 @@ namespace client {
 /**
  *@brief A geode assertion exception.
  **/
-class  CPPCACHE_EXPORT AssertionException : public Exception {
-public:
+class _GEODE_EXPORT AssertionException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~AssertionException() noexcept {}
   virtual std::string getName() const override {
@@ -49,8 +49,8 @@ public:
 /**
  *@brief Thrown when an argument to a method is illegal.
  **/
-class  CPPCACHE_EXPORT IllegalArgumentException : public Exception {
-public:
+class _GEODE_EXPORT IllegalArgumentException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~IllegalArgumentException() noexcept {}
   virtual std::string getName() const override {
@@ -61,8 +61,8 @@ public:
 /**
  *@brief Thrown when the state of cache is manipulated to be illegal.
  **/
-class  CPPCACHE_EXPORT IllegalStateException : public Exception {
-public:
+class _GEODE_EXPORT IllegalStateException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~IllegalStateException() noexcept {}
   virtual std::string getName() const override {
@@ -73,8 +73,8 @@ public:
 /**
  *@brief Thrown when an attempt is made to create an existing cache.
  **/
-class  CPPCACHE_EXPORT CacheExistsException : public Exception {
-public:
+class _GEODE_EXPORT CacheExistsException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheExistsException() noexcept {}
   virtual std::string getName() const override {
@@ -85,8 +85,8 @@ public:
 /**
  *@brief Thrown when the cache xml is incorrect.
  **/
-class  CPPCACHE_EXPORT CacheXmlException : public Exception {
-public:
+class _GEODE_EXPORT CacheXmlException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheXmlException() noexcept {}
   virtual std::string getName() const override {
@@ -96,8 +96,8 @@ public:
 /**
  *@brief Thrown when a timout occurs.
  **/
-class  CPPCACHE_EXPORT TimeoutException : public Exception {
-public:
+class _GEODE_EXPORT TimeoutException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~TimeoutException() noexcept {}
   virtual std::string getName() const override {
@@ -108,8 +108,8 @@ public:
 /**
  *@brief Thrown when the cache writer aborts the operation.
  **/
-class  CPPCACHE_EXPORT CacheWriterException : public Exception {
-public:
+class _GEODE_EXPORT CacheWriterException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheWriterException() noexcept {}
   virtual std::string getName() const override {
@@ -120,8 +120,8 @@ public:
 /**
  *@brief Thrown when an attempt is made to create an existing region.
  **/
-class  CPPCACHE_EXPORT RegionExistsException : public Exception {
-public:
+class _GEODE_EXPORT RegionExistsException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~RegionExistsException() noexcept {}
   virtual std::string getName() const override {
@@ -132,8 +132,8 @@ public:
 /**
  *@brief Thrown when an operation is attempted on a closed cache.
  **/
-class  CPPCACHE_EXPORT CacheClosedException : public Exception {
-public:
+class _GEODE_EXPORT CacheClosedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheClosedException() noexcept {}
   virtual std::string getName() const override {
@@ -144,8 +144,8 @@ public:
 /**
  *@brief Thrown when lease of cache proxy has expired.
  **/
-class  CPPCACHE_EXPORT LeaseExpiredException : public Exception {
-public:
+class _GEODE_EXPORT LeaseExpiredException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~LeaseExpiredException() noexcept {}
   virtual std::string getName() const override {
@@ -156,8 +156,8 @@ public:
 /**
  *@brief Thrown when the cache loader aborts the operation.
  **/
-class  CPPCACHE_EXPORT CacheLoaderException : public Exception {
-public:
+class _GEODE_EXPORT CacheLoaderException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheLoaderException() noexcept {}
   virtual std::string getName() const override {
@@ -168,8 +168,8 @@ public:
 /**
  *@brief Thrown when an operation is attempted on a destroyed region.
  **/
-class  CPPCACHE_EXPORT RegionDestroyedException : public Exception {
-public:
+class _GEODE_EXPORT RegionDestroyedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~RegionDestroyedException() noexcept {}
   virtual std::string getName() const override {
@@ -180,8 +180,8 @@ public:
 /**
  *@brief Thrown when an operation is attempted on a destroyed entry.
  **/
-class  CPPCACHE_EXPORT EntryDestroyedException : public Exception {
-public:
+class _GEODE_EXPORT EntryDestroyedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~EntryDestroyedException() noexcept {}
   virtual std::string getName() const override {
@@ -192,8 +192,8 @@ public:
 /**
  *@brief Thrown when the connecting target is not running.
  **/
-class  CPPCACHE_EXPORT NoSystemException : public Exception {
-public:
+class _GEODE_EXPORT NoSystemException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~NoSystemException() noexcept {}
   virtual std::string getName() const override {
@@ -205,8 +205,8 @@ public:
  *@brief Thrown when an attempt is made to connect to
  *       DistributedSystem second time.
  **/
-class  CPPCACHE_EXPORT AlreadyConnectedException : public Exception {
-public:
+class _GEODE_EXPORT AlreadyConnectedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~AlreadyConnectedException() noexcept {}
   virtual std::string getName() const override {
@@ -217,8 +217,8 @@ public:
 /**
  *@brief Thrown when a non-existing file is accessed.
  **/
-class  CPPCACHE_EXPORT FileNotFoundException : public Exception {
-public:
+class _GEODE_EXPORT FileNotFoundException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~FileNotFoundException() noexcept {}
   virtual std::string getName() const override {
@@ -229,8 +229,8 @@ public:
 /**
  *@brief Thrown when an operation is interrupted.
  **/
-class  CPPCACHE_EXPORT InterruptedException : public Exception {
-public:
+class _GEODE_EXPORT InterruptedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~InterruptedException() noexcept {}
   virtual std::string getName() const override {
@@ -242,8 +242,8 @@ public:
  *@brief Thrown when an operation unsupported by the
  *       current configuration is attempted.
  **/
-class  CPPCACHE_EXPORT UnsupportedOperationException : public Exception {
-public:
+class _GEODE_EXPORT UnsupportedOperationException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~UnsupportedOperationException() noexcept {}
   virtual std::string getName() const override {
@@ -255,8 +255,8 @@ public:
  *@brief Thrown when statistics are invoked for a region where
  *       they are disabled.
  **/
-class  CPPCACHE_EXPORT StatisticsDisabledException : public Exception {
-public:
+class _GEODE_EXPORT StatisticsDisabledException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~StatisticsDisabledException() noexcept {}
   virtual std::string getName() const override {
@@ -267,8 +267,8 @@ public:
 /**
  *@brief Thrown when a concurrent operation fails.
  **/
-class  CPPCACHE_EXPORT ConcurrentModificationException : public Exception {
-public:
+class _GEODE_EXPORT ConcurrentModificationException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~ConcurrentModificationException() noexcept {}
   virtual std::string getName() const override {
@@ -279,8 +279,8 @@ public:
 /**
  *@brief An unknown exception occurred.
  **/
-class  CPPCACHE_EXPORT UnknownException : public Exception {
-public:
+class _GEODE_EXPORT UnknownException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~UnknownException() noexcept {}
   virtual std::string getName() const override {
@@ -291,8 +291,8 @@ public:
 /**
  *@brief Thrown when a cast operation fails.
  **/
-class  CPPCACHE_EXPORT ClassCastException : public Exception {
-public:
+class _GEODE_EXPORT ClassCastException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~ClassCastException() noexcept {}
   virtual std::string getName() const override {
@@ -303,8 +303,8 @@ public:
 /**
  *@brief Thrown when an operation is attempted on a non-existent entry.
  **/
-class  CPPCACHE_EXPORT EntryNotFoundException : public Exception {
-public:
+class _GEODE_EXPORT EntryNotFoundException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~EntryNotFoundException() noexcept {}
   virtual std::string getName() const override {
@@ -315,8 +315,8 @@ public:
 /**
  *@brief Thrown when there is an input/output error.
  **/
-class  CPPCACHE_EXPORT GeodeIOException : public Exception {
-public:
+class _GEODE_EXPORT GeodeIOException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~GeodeIOException() noexcept {}
   virtual std::string getName() const override {
@@ -327,8 +327,8 @@ public:
 /**
  *@brief Thrown when geode configuration file is incorrect.
  **/
-class  CPPCACHE_EXPORT GeodeConfigException : public Exception {
-public:
+class _GEODE_EXPORT GeodeConfigException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~GeodeConfigException() noexcept {}
   virtual std::string getName() const override {
@@ -340,8 +340,8 @@ public:
  *@brief Thrown when a null argument is provided to a method
  *       where it is expected to be non-null.
  **/
-class  CPPCACHE_EXPORT NullPointerException : public Exception {
-public:
+class _GEODE_EXPORT NullPointerException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~NullPointerException() noexcept {}
   virtual std::string getName() const override {
@@ -352,8 +352,8 @@ public:
 /**
  *@brief Thrown when attempt is made to create an existing entry.
  **/
-class  CPPCACHE_EXPORT EntryExistsException : public Exception {
-public:
+class _GEODE_EXPORT EntryExistsException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~EntryExistsException() noexcept {}
   virtual std::string getName() const override {
@@ -365,8 +365,8 @@ public:
  *@brief Thrown when an operation is attempted before connecting
  *       to the distributed system.
  **/
-class  CPPCACHE_EXPORT NotConnectedException : public Exception {
-public:
+class _GEODE_EXPORT NotConnectedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~NotConnectedException() noexcept {}
   virtual std::string getName() const override {
@@ -377,8 +377,8 @@ public:
 /**
  *@brief Thrown when there is an error in the cache proxy.
  **/
-class  CPPCACHE_EXPORT CacheProxyException : public Exception {
-public:
+class _GEODE_EXPORT CacheProxyException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheProxyException() noexcept {}
   virtual std::string getName() const override {
@@ -389,8 +389,8 @@ public:
 /**
  *@brief Thrown when the system cannot allocate any more memory.
  **/
-class  CPPCACHE_EXPORT OutOfMemoryException : public Exception {
-public:
+class _GEODE_EXPORT OutOfMemoryException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~OutOfMemoryException() noexcept {}
   virtual std::string getName() const override {
@@ -402,8 +402,8 @@ public:
  *@brief Thrown when an attempt is made to release a lock not
  *       owned by the thread.
  **/
-class  CPPCACHE_EXPORT NotOwnerException : public Exception {
-public:
+class _GEODE_EXPORT NotOwnerException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~NotOwnerException() noexcept {}
   virtual std::string getName() const override {
@@ -414,8 +414,8 @@ public:
 /**
  *@brief Thrown when a region is created in an incorrect scope.
  **/
-class  CPPCACHE_EXPORT WrongRegionScopeException : public Exception {
-public:
+class _GEODE_EXPORT WrongRegionScopeException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~WrongRegionScopeException() noexcept {}
   virtual std::string getName() const override {
@@ -426,8 +426,8 @@ public:
 /**
  *@brief Thrown when the internal buffer size is exceeded.
  **/
-class  CPPCACHE_EXPORT BufferSizeExceededException : public Exception {
-public:
+class _GEODE_EXPORT BufferSizeExceededException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~BufferSizeExceededException() noexcept {}
   virtual std::string getName() const override {
@@ -438,8 +438,8 @@ public:
 /**
  *@brief Thrown when a region creation operation fails.
  **/
-class  CPPCACHE_EXPORT RegionCreationFailedException : public Exception {
-public:
+class _GEODE_EXPORT RegionCreationFailedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~RegionCreationFailedException() noexcept {}
   virtual std::string getName() const override {
@@ -450,8 +450,8 @@ public:
 /**
  *@brief Thrown when there is a fatal internal exception in geode.
  */
-class  CPPCACHE_EXPORT FatalInternalException : public Exception {
-public:
+class _GEODE_EXPORT FatalInternalException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~FatalInternalException() noexcept {}
   virtual std::string getName() const override {
@@ -463,8 +463,8 @@ public:
  *@brief Thrown by the persistence manager when a write
  *       fails due to disk failure.
  **/
-class  CPPCACHE_EXPORT DiskFailureException : public Exception {
-public:
+class _GEODE_EXPORT DiskFailureException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~DiskFailureException() noexcept {}
   virtual std::string getName() const override {
@@ -476,8 +476,8 @@ public:
  *@brief Thrown by the persistence manager when the data
  *@brief to be read from disk is corrupt.
  **/
-class  CPPCACHE_EXPORT DiskCorruptException : public Exception {
-public:
+class _GEODE_EXPORT DiskCorruptException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~DiskCorruptException() noexcept {}
   virtual std::string getName() const override {
@@ -488,8 +488,8 @@ public:
 /**
  *@brief Thrown when persistence manager fails to initialize.
  **/
-class  CPPCACHE_EXPORT InitFailedException : public Exception {
-public:
+class _GEODE_EXPORT InitFailedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~InitFailedException() noexcept {}
   virtual std::string getName() const override {
@@ -500,8 +500,8 @@ public:
 /**
  *@brief Thrown when persistence manager fails to close properly.
  **/
-class  CPPCACHE_EXPORT ShutdownFailedException : public Exception {
-public:
+class _GEODE_EXPORT ShutdownFailedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~ShutdownFailedException() noexcept {}
   virtual std::string getName() const override {
@@ -512,8 +512,8 @@ public:
 /**
  *@brief Thrown when an exception occurs on the cache server.
  **/
- class  CPPCACHE_EXPORT CacheServerException : public Exception {
-public:
+class _GEODE_EXPORT CacheServerException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheServerException() noexcept {}
   virtual std::string getName() const override {
@@ -524,8 +524,8 @@ public:
 /**
  *@brief Thrown when bound of array/vector etc. is exceeded.
  **/
-class  CPPCACHE_EXPORT OutOfRangeException : public Exception {
-public:
+class _GEODE_EXPORT OutOfRangeException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~OutOfRangeException() noexcept {}
   virtual std::string getName() const override {
@@ -536,8 +536,8 @@ public:
 /**
  *@brief Thrown when query exception occurs at the server.
  **/
-class  CPPCACHE_EXPORT QueryException : public Exception {
-public:
+class _GEODE_EXPORT QueryException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~QueryException() noexcept {}
   virtual std::string getName() const override {
@@ -548,8 +548,8 @@ public:
 /**
  *@brief Thrown when an unknown message is received from the server.
  **/
-class  CPPCACHE_EXPORT MessageException : public Exception {
-public:
+class _GEODE_EXPORT MessageException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~MessageException() noexcept {}
   virtual std::string getName() const override {
@@ -560,8 +560,8 @@ public:
 /**
  *@brief Thrown when a non authorized operation is done.
  **/
-class  CPPCACHE_EXPORT NotAuthorizedException : public Exception {
-public:
+class _GEODE_EXPORT NotAuthorizedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~NotAuthorizedException() noexcept {}
   virtual std::string getName() const override {
@@ -572,8 +572,8 @@ public:
 /**
  *@brief Thrown when authentication fails.
  **/
-class  CPPCACHE_EXPORT AuthenticationFailedException : public Exception {
-public:
+class _GEODE_EXPORT AuthenticationFailedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~AuthenticationFailedException() noexcept {}
   virtual std::string getName() const override {
@@ -584,8 +584,8 @@ public:
 /**
  *@brief Thrown when no credentials are provided by client when server expects.
  **/
-class  CPPCACHE_EXPORT AuthenticationRequiredException : public Exception {
-public:
+class _GEODE_EXPORT AuthenticationRequiredException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~AuthenticationRequiredException() noexcept {}
   virtual std::string getName() const override {
@@ -596,8 +596,8 @@ public:
 /**
  *@brief Thrown when two durable connect with same Id.
  **/
-class  CPPCACHE_EXPORT DuplicateDurableClientException : public Exception {
-public:
+class _GEODE_EXPORT DuplicateDurableClientException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~DuplicateDurableClientException() noexcept {}
   virtual std::string getName() const override {
@@ -608,8 +608,8 @@ public:
 /**
  *@brief Thrown when the cache listener throws an exception.
  **/
-class  CPPCACHE_EXPORT CacheListenerException : public Exception {
-public:
+class _GEODE_EXPORT CacheListenerException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CacheListenerException() noexcept {}
   virtual std::string getName() const override {
@@ -619,8 +619,8 @@ public:
 /**
  *@brief Thrown during continuous query execution time.
  **/
-class  CPPCACHE_EXPORT CqException : public Exception {
-public:
+class _GEODE_EXPORT CqException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CqException() noexcept {}
   virtual std::string getName() const override {
@@ -630,8 +630,8 @@ public:
 /**
  *@brief Thrown if the Cq on which the operaion performed is closed
  **/
-class  CPPCACHE_EXPORT CqClosedException : public Exception {
-public:
+class _GEODE_EXPORT CqClosedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CqClosedException() noexcept {}
   virtual std::string getName() const override {
@@ -641,8 +641,8 @@ public:
 /**
  *@brief Thrown if the Cq Query failed
  **/
-class  CPPCACHE_EXPORT CqQueryException : public Exception {
-public:
+class _GEODE_EXPORT CqQueryException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CqQueryException() noexcept {}
   virtual std::string getName() const override {
@@ -652,8 +652,8 @@ public:
 /**
  *@brief Thrown if a Cq by this name already exists on this client
  **/
-class  CPPCACHE_EXPORT CqExistsException : public Exception {
-public:
+class _GEODE_EXPORT CqExistsException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CqExistsException() noexcept {}
   virtual std::string getName() const override {
@@ -670,8 +670,8 @@ public:
  *region path.
  *      Bind parameters in the query are not supported for the initial release.
  **/
-class  CPPCACHE_EXPORT CqInvalidException : public Exception {
-public:
+class _GEODE_EXPORT CqInvalidException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CqInvalidException() noexcept {}
   virtual std::string getName() const override {
@@ -681,8 +681,8 @@ public:
 /**
  *@brief Thrown if function execution failed
  **/
-class  CPPCACHE_EXPORT FunctionExecutionException : public Exception {
-public:
+class _GEODE_EXPORT FunctionExecutionException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~FunctionExecutionException() noexcept {}
   virtual std::string getName() const override {
@@ -692,8 +692,8 @@ public:
 /**
  *@brief Thrown if the No locators are active to reply for new connection.
  **/
-class  CPPCACHE_EXPORT NoAvailableLocatorsException : public Exception {
-public:
+class _GEODE_EXPORT NoAvailableLocatorsException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~NoAvailableLocatorsException() noexcept {}
   virtual std::string getName() const override {
@@ -703,8 +703,8 @@ public:
 /**
  *@brief Thrown if all connections in the pool are in use.
  **/
-class  CPPCACHE_EXPORT AllConnectionsInUseException : public Exception {
-public:
+class _GEODE_EXPORT AllConnectionsInUseException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~AllConnectionsInUseException() noexcept {}
   virtual std::string getName() const override {
@@ -714,8 +714,8 @@ public:
 /**
  *@brief Thrown if Delta could not be applied.
  **/
-class  CPPCACHE_EXPORT InvalidDeltaException : public Exception {
-public:
+class _GEODE_EXPORT InvalidDeltaException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~InvalidDeltaException() noexcept {}
   virtual std::string getName() const override {
@@ -725,8 +725,8 @@ public:
 /**
  *@brief Thrown if a Key is not present in the region.
  **/
-class  CPPCACHE_EXPORT KeyNotFoundException : public Exception {
-public:
+class _GEODE_EXPORT KeyNotFoundException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~KeyNotFoundException() noexcept {}
   virtual std::string getName() const override {
@@ -737,8 +737,8 @@ public:
  * @brief This is for all Exceptions that may be thrown
  * by a Geode transaction.
  **/
-class  CPPCACHE_EXPORT TransactionException : public Exception {
-public:
+class _GEODE_EXPORT TransactionException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~TransactionException() noexcept {}
   virtual std::string getName() const override {
@@ -750,8 +750,8 @@ public:
  * has been rolled back or an operation cannot complete because the
  * transaction is marked for rollback only.
  **/
-class  CPPCACHE_EXPORT RollbackException : public Exception {
-public:
+class _GEODE_EXPORT RollbackException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~RollbackException() noexcept {}
   virtual std::string getName() const override {
@@ -762,8 +762,8 @@ public:
  * @brief Thrown when a commit fails due to a write conflict.
  * @see CacheTransactionManager#commit
  **/
-class  CPPCACHE_EXPORT CommitConflictException : public Exception {
-public:
+class _GEODE_EXPORT CommitConflictException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~CommitConflictException() noexcept {}
   virtual std::string getName() const override {
@@ -776,8 +776,8 @@ public:
  * being modified by the transaction.
  * This can be thrown while doing transactional operations or during commit.
  **/
-class  CPPCACHE_EXPORT TransactionDataNodeHasDepartedException : public Exception {
-public:
+class _GEODE_EXPORT TransactionDataNodeHasDepartedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~TransactionDataNodeHasDepartedException() noexcept {}
   virtual std::string getName() const override {
@@ -789,8 +789,8 @@ public:
  *transaction.
  * This can be thrown while doing transactional operations or during commit.
  **/
-class  CPPCACHE_EXPORT TransactionDataRebalancedException : public Exception {
-public:
+class _GEODE_EXPORT TransactionDataRebalancedException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~TransactionDataRebalancedException() noexcept {}
   virtual std::string getName() const override {
@@ -801,8 +801,8 @@ public:
 /**
  * @brief Thrown if putAll operation with single hop succeeded partially.
  **/
-class  CPPCACHE_EXPORT PutAllPartialResultException : public Exception {
-public:
+class _GEODE_EXPORT PutAllPartialResultException : public Exception {
+ public:
   using Exception::Exception;
   virtual ~PutAllPartialResultException() noexcept {}
   virtual std::string getName() const override {
diff --git a/cppcache/include/geode/Execution.hpp b/cppcache/include/geode/Execution.hpp
index a8cd437..1449bb4 100644
--- a/cppcache/include/geode/Execution.hpp
+++ b/cppcache/include/geode/Execution.hpp
@@ -24,7 +24,7 @@
 #include <chrono>
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableBuiltins.hpp"
 #include "ResultCollector.hpp"
 
@@ -41,8 +41,7 @@ namespace client {
  * @see FunctionService
  */
 
-class CPPCACHE_EXPORT Execution {
-
+class _GEODE_EXPORT Execution {
  public:
   /**
    * Specifies a data filter of routing objects for selecting the Geode
diff --git a/cppcache/include/geode/ExpirationAction.hpp b/cppcache/include/geode/ExpirationAction.hpp
index ff6658a..480d169 100644
--- a/cppcache/include/geode/ExpirationAction.hpp
+++ b/cppcache/include/geode/ExpirationAction.hpp
@@ -23,7 +23,7 @@
 #include <iosfwd>
 #include <string>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -39,7 +39,7 @@ namespace client {
  *
  * @see ExpirationAttributes
  */
-class CPPCACHE_EXPORT ExpirationAction {
+class _GEODE_EXPORT ExpirationAction {
  public:
   typedef enum {
     /** When the region or cached object expires, it is invalidated. */
diff --git a/cppcache/include/geode/ExpirationAttributes.hpp b/cppcache/include/geode/ExpirationAttributes.hpp
index ab61855..4694fc5 100644
--- a/cppcache/include/geode/ExpirationAttributes.hpp
+++ b/cppcache/include/geode/ExpirationAttributes.hpp
@@ -22,7 +22,7 @@
 
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExpirationAction.hpp"
 
 /**
@@ -47,7 +47,7 @@ namespace client {
  * @see RegionAttributes
  * @see AttributesMutator
  */
-class CPPCACHE_EXPORT ExpirationAttributes {
+class _GEODE_EXPORT ExpirationAttributes {
   /**
     * @brief public methods
     */
diff --git a/cppcache/include/geode/FixedPartitionResolver.hpp b/cppcache/include/geode/FixedPartitionResolver.hpp
index d01718a..8064786 100644
--- a/cppcache/include/geode/FixedPartitionResolver.hpp
+++ b/cppcache/include/geode/FixedPartitionResolver.hpp
@@ -71,7 +71,7 @@ class EntryEvent;
  * @see PartitionResolver
  *
  */
-class CPPCACHE_EXPORT FixedPartitionResolver : public PartitionResolver {
+class _GEODE_EXPORT FixedPartitionResolver : public PartitionResolver {
   /**
   * @brief public methods
   */
diff --git a/cppcache/include/geode/FunctionService.hpp b/cppcache/include/geode/FunctionService.hpp
index c35e7b8..5e26385 100644
--- a/cppcache/include/geode/FunctionService.hpp
+++ b/cppcache/include/geode/FunctionService.hpp
@@ -22,7 +22,7 @@
 
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Execution.hpp"
 
 /**
@@ -42,7 +42,7 @@ class Execution;
  * entry point for function execution
  * @see Execution
  */
-class CPPCACHE_EXPORT FunctionService {
+class _GEODE_EXPORT FunctionService {
  public:
   /**
    * Returns a {@link Execution} object that can be used to execute a data
diff --git a/cppcache/include/geode/GeodeCache.hpp b/cppcache/include/geode/GeodeCache.hpp
index 15ea6af..6c662e1 100644
--- a/cppcache/include/geode/GeodeCache.hpp
+++ b/cppcache/include/geode/GeodeCache.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "RegionService.hpp"
 
 /**
@@ -45,7 +45,7 @@ class DistributedSystem;
  *
  */
 
-class CPPCACHE_EXPORT GeodeCache : public RegionService {
+class _GEODE_EXPORT GeodeCache : public RegionService {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/PartitionResolver.hpp b/cppcache/include/geode/PartitionResolver.hpp
index 647dace..77b23e8 100644
--- a/cppcache/include/geode/PartitionResolver.hpp
+++ b/cppcache/include/geode/PartitionResolver.hpp
@@ -25,7 +25,7 @@
 #include <string>
 
 #include "Cacheable.hpp"
-#include "geode_base.hpp"
+#include "internal/geode_base.hpp"
 
 namespace apache {
 namespace geode {
@@ -70,7 +70,7 @@ class EntryEvent;
  * In the example above, all trade entries with the same month and year are
  * guaranteed to be colocated.
  */
-class CPPCACHE_EXPORT PartitionResolver {
+class _GEODE_EXPORT PartitionResolver {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/PdxFieldTypes.hpp b/cppcache/include/geode/PdxFieldTypes.hpp
index 37d5172..5297dee 100644
--- a/cppcache/include/geode/PdxFieldTypes.hpp
+++ b/cppcache/include/geode/PdxFieldTypes.hpp
@@ -20,13 +20,13 @@
 #ifndef GEODE_PDXFIELDTYPES_H_
 #define GEODE_PDXFIELDTYPES_H_
 
-#include "geode_base.hpp"
+#include "internal/geode_base.hpp"
 
 namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT PdxFieldTypes {
+class _GEODE_EXPORT PdxFieldTypes {
  public:
   enum PdxFieldType {
     BOOLEAN,
diff --git a/cppcache/include/geode/PdxInstance.hpp b/cppcache/include/geode/PdxInstance.hpp
index 1cb1a58..5adf210 100644
--- a/cppcache/include/geode/PdxInstance.hpp
+++ b/cppcache/include/geode/PdxInstance.hpp
@@ -48,7 +48,7 @@ class CacheableObjectArray;
  * a PDX is done it will deserialize into a PdxInstance. PdxInstance are
  * immutable. If you want to change one call {@link #createWriter}.
  */
-class CPPCACHE_EXPORT PdxInstance : public PdxSerializable {
+class _GEODE_EXPORT PdxInstance : public PdxSerializable {
  public:
   /**
    * @brief destructor
diff --git a/cppcache/include/geode/PdxInstanceFactory.hpp b/cppcache/include/geode/PdxInstanceFactory.hpp
index d7cb125..c95182e 100644
--- a/cppcache/include/geode/PdxInstanceFactory.hpp
+++ b/cppcache/include/geode/PdxInstanceFactory.hpp
@@ -21,7 +21,7 @@
 #define GEODE_PDXINSTANCEFACTORY_H_
 
 #include "PdxInstance.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableBuiltins.hpp"
 #include "CacheableDate.hpp"
 #include "CacheableObjectArray.hpp"
@@ -41,7 +41,7 @@ namespace client {
  * multiple factories or use {@link PdxInstance#createWriter} to create
  * subsequent instances.
  */
-class CPPCACHE_EXPORT PdxInstanceFactory {
+class _GEODE_EXPORT PdxInstanceFactory {
  public:
   /**
    * @brief destructor
diff --git a/cppcache/include/geode/PdxReader.hpp b/cppcache/include/geode/PdxReader.hpp
index e3e8dd0..8f8756d 100644
--- a/cppcache/include/geode/PdxReader.hpp
+++ b/cppcache/include/geode/PdxReader.hpp
@@ -54,7 +54,7 @@ class CacheableDate;
  * @note Custom implementations of PdxReader are not subject
  *       to this restriction.
  */
-class CPPCACHE_EXPORT PdxReader {
+class _GEODE_EXPORT PdxReader {
  public:
   /**
    * @brief constructors
diff --git a/cppcache/include/geode/PdxSerializable.hpp b/cppcache/include/geode/PdxSerializable.hpp
index 624c9b1..3741acb 100644
--- a/cppcache/include/geode/PdxSerializable.hpp
+++ b/cppcache/include/geode/PdxSerializable.hpp
@@ -25,7 +25,7 @@
 #include <string>
 
 #include "CacheableKey.hpp"
-#include "geode_base.hpp"
+#include "internal/geode_base.hpp"
 
 namespace apache {
 namespace geode {
@@ -36,7 +36,7 @@ class PdxWriter;
 class DataInput;
 class DataOutput;
 
-class CPPCACHE_EXPORT PdxSerializable : public CacheableKey {
+class _GEODE_EXPORT PdxSerializable : public CacheableKey {
  public:
   PdxSerializable();
   virtual ~PdxSerializable();
diff --git a/cppcache/include/geode/PdxSerializer.hpp b/cppcache/include/geode/PdxSerializer.hpp
index ad5cb3a..08dd2ff 100644
--- a/cppcache/include/geode/PdxSerializer.hpp
+++ b/cppcache/include/geode/PdxSerializer.hpp
@@ -48,7 +48,7 @@ typedef uint32_t (*UserObjectSizer)(void*, const std::string&);
  * Serializable::registerPdxSerializer} to create new
  * instance of type for de-serilization.
  */
-class CPPCACHE_EXPORT PdxSerializer {
+class _GEODE_EXPORT PdxSerializer {
  public:
   PdxSerializer() {}
 
diff --git a/cppcache/include/geode/PdxUnreadFields.hpp b/cppcache/include/geode/PdxUnreadFields.hpp
index 0f15d98..785fca3 100644
--- a/cppcache/include/geode/PdxUnreadFields.hpp
+++ b/cppcache/include/geode/PdxUnreadFields.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_PDXUNREADFIELDS_H_
 #define GEODE_PDXUNREADFIELDS_H_
 
-#include "geode_base.hpp"
+#include "internal/geode_base.hpp"
 
 namespace apache {
 namespace geode {
@@ -40,7 +40,7 @@ namespace client {
  * This should only happen when a domain class has changed by adding or removing
  *one or more fields.
  **/
-class CPPCACHE_EXPORT PdxUnreadFields {
+class _GEODE_EXPORT PdxUnreadFields {
  public:
   PdxUnreadFields() {}
   virtual ~PdxUnreadFields() {}
diff --git a/cppcache/include/geode/PdxWrapper.hpp b/cppcache/include/geode/PdxWrapper.hpp
index 18db63e..f591888 100644
--- a/cppcache/include/geode/PdxWrapper.hpp
+++ b/cppcache/include/geode/PdxWrapper.hpp
@@ -26,7 +26,7 @@
 
 #include "PdxSerializable.hpp"
 #include "PdxSerializer.hpp"
-#include "geode_base.hpp"
+#include "internal/geode_base.hpp"
 
 namespace apache {
 namespace geode {
@@ -38,7 +38,7 @@ class DataOutput;
 class PdxReader;
 class PdxWriter;
 
-class CPPCACHE_EXPORT PdxWrapper : public PdxSerializable {
+class _GEODE_EXPORT PdxWrapper : public PdxSerializable {
   /**
    * The PdxWrapper class allows domain classes to be used in Region operations.
    * A user domain object should be wrapped in an instance of a PdxWrapper with
@@ -126,7 +126,7 @@ class CPPCACHE_EXPORT PdxWrapper : public PdxSerializable {
   PdxWrapper(std::string className,
              std::shared_ptr<PdxSerializer> pdxSerializerPtr);
 
-  FRIEND_STD_SHARED_PTR(PdxWrapper)
+  _GEODE_FRIEND_STD_SHARED_PTR(PdxWrapper)
 
   void* m_userObject;
   std::string m_className;
diff --git a/cppcache/include/geode/PdxWriter.hpp b/cppcache/include/geode/PdxWriter.hpp
index eb04cb0..8f8293e 100644
--- a/cppcache/include/geode/PdxWriter.hpp
+++ b/cppcache/include/geode/PdxWriter.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_PDXWRITER_H_
 #define GEODE_PDXWRITER_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableBuiltins.hpp"
 #include "CacheableDate.hpp"
 
@@ -36,7 +36,7 @@ class PdxUnreadFields;
  * member
  * fields using this abstract class. This class is implemented by Native Client.
  */
-class CPPCACHE_EXPORT PdxWriter {
+class _GEODE_EXPORT PdxWriter {
  public:
   /**
    * @brief constructors
diff --git a/cppcache/include/geode/PersistenceManager.hpp b/cppcache/include/geode/PersistenceManager.hpp
index 1765afd..1c8dc50 100644
--- a/cppcache/include/geode/PersistenceManager.hpp
+++ b/cppcache/include/geode/PersistenceManager.hpp
@@ -22,34 +22,19 @@
 
 #include <memory>
 
+#include "internal/geode_globals.hpp"
 #include "Cacheable.hpp"
-#include "CacheableKey.hpp"
-#include "DistributedSystem.hpp"
-#include "ExceptionTypes.hpp"
-#include "geode_base.hpp"
-#include "geode_globals.hpp"
-
-namespace apache {
-namespace geode {
-namespace client {
-class CacheableKey;
-class Properties;
-}  // namespace client
-}  // namespace geode
-}  // namespace apache
 
 /**
  * @file
  */
 
-#define MAX_PAGE_COUNT "MaxPageCount"
-#define PAGE_SIZE "PageSize"
-#define PERSISTENCE_DIR "PersistenceDirectory"
-
 namespace apache {
 namespace geode {
 namespace client {
 
+class CacheableKey;
+class Properties;
 class PersistenceManager;
 class Region;
 
@@ -64,11 +49,12 @@ typedef std::shared_ptr<PersistenceManager> (*getPersistenceManagerInstance)(
  * A specific disk storage implementation will implement all the methods
  * described here.
  */
-class CPPCACHE_EXPORT PersistenceManager {
-  /**
-   * @brief public methods
-   */
+class _GEODE_EXPORT PersistenceManager {
  public:
+  static constexpr char const* MAX_PAGE_COUNT = "MaxPageCount";
+  static constexpr char const* PAGE_SIZE = "PageSize";
+  static constexpr char const* PERSISTENCE_DIR = "PersistenceDirectory";
+
   /**
    * Returns the current persistence manager.
    * @return persistence manager
@@ -137,13 +123,12 @@ class CPPCACHE_EXPORT PersistenceManager {
    */
   virtual void close() = 0;
 
-  PersistenceManager(const std::shared_ptr<Region>& regionPtr);
-  PersistenceManager();
+  PersistenceManager(const std::shared_ptr<Region>& regionPtr)
+      : m_regionPtr(regionPtr) {}
 
-  /**
-    * @brief destructor
-    */
-  virtual ~PersistenceManager() = 0;
+  PersistenceManager() = default;
+
+  virtual ~PersistenceManager() = default;
 
  protected:
   /** Region for this persistence manager.
diff --git a/cppcache/include/geode/Pool.hpp b/cppcache/include/geode/Pool.hpp
index cae5956..6ba52ab 100644
--- a/cppcache/include/geode/Pool.hpp
+++ b/cppcache/include/geode/Pool.hpp
@@ -27,8 +27,8 @@
 #include "Cache.hpp"
 #include "CacheFactory.hpp"
 #include "CacheableBuiltins.hpp"
-#include "geode_base.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_base.hpp"
+#include "internal/geode_globals.hpp"
 #include "internal/chrono/duration.hpp"
 
 /**
@@ -61,7 +61,7 @@ class RegionService;
  *
  *
  */
-class CPPCACHE_EXPORT Pool : public std::enable_shared_from_this<Pool> {
+class _GEODE_EXPORT Pool : public std::enable_shared_from_this<Pool> {
  public:
   /**
    * Gets the name of the connection pool
diff --git a/cppcache/include/geode/PoolFactory.hpp b/cppcache/include/geode/PoolFactory.hpp
index 03cb4c1..b19411d 100644
--- a/cppcache/include/geode/PoolFactory.hpp
+++ b/cppcache/include/geode/PoolFactory.hpp
@@ -22,7 +22,7 @@
 
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "internal/chrono/duration.hpp"
 #include "Pool.hpp"
 
@@ -65,7 +65,7 @@ class Pool;
  * </ul>
  *
  */
-class CPPCACHE_EXPORT PoolFactory {
+class _GEODE_EXPORT PoolFactory {
  public:
   /**
    * The default amount of time which we will wait for a free connection if max
@@ -542,7 +542,7 @@ class CPPCACHE_EXPORT PoolFactory {
   friend class CacheFactory;
   friend class CacheXmlCreation;
 
-  FRIEND_STD_SHARED_PTR(PoolFactory)
+  _GEODE_FRIEND_STD_SHARED_PTR(PoolFactory)
 };
 
 }  // namespace client
diff --git a/cppcache/include/geode/PoolManager.hpp b/cppcache/include/geode/PoolManager.hpp
index 5413d2d..6d1ebcc 100644
--- a/cppcache/include/geode/PoolManager.hpp
+++ b/cppcache/include/geode/PoolManager.hpp
@@ -29,8 +29,8 @@
 #include "Pool.hpp"
 #include "PoolFactory.hpp"
 #include "Region.hpp"
-#include "geode_base.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_base.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
@@ -59,7 +59,7 @@ typedef std::unordered_map<std::string, std::shared_ptr<Pool>> HashMapOfPools;
  *
  *
  */
-class CPPCACHE_EXPORT PoolManager {
+class _GEODE_EXPORT PoolManager {
  public:
 
   /**
diff --git a/cppcache/include/geode/Properties.hpp b/cppcache/include/geode/Properties.hpp
index 54f8765..31d3b86 100644
--- a/cppcache/include/geode/Properties.hpp
+++ b/cppcache/include/geode/Properties.hpp
@@ -27,7 +27,7 @@
 #include <string>
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Serializable.hpp"
 #include "Cacheable.hpp"
 #include "internal/chrono/duration.hpp"
@@ -49,7 +49,8 @@ class CacheableString;
  * the property; value, the value of the property.
  *
  */
-class CPPCACHE_EXPORT Properties : public Serializable {
+
+class _GEODE_EXPORT Properties : public Serializable {
  public:
   class Visitor {
    public:
diff --git a/cppcache/include/geode/Query.hpp b/cppcache/include/geode/Query.hpp
index a3249f7..5399fb0 100644
--- a/cppcache/include/geode/Query.hpp
+++ b/cppcache/include/geode/Query.hpp
@@ -22,7 +22,7 @@
 
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 #include "SelectResults.hpp"
 
@@ -46,7 +46,7 @@ namespace client {
  * operate on the same <code>Query</code> object concurrently rather should
  * have their own <code>Query</code> objects.
  */
-class CPPCACHE_EXPORT Query {
+class _GEODE_EXPORT Query {
  public:
   /**
    * Executes the OQL Query on the cache server and returns the results.
diff --git a/cppcache/include/geode/QueryService.hpp b/cppcache/include/geode/QueryService.hpp
index 3584db1..87ff877 100644
--- a/cppcache/include/geode/QueryService.hpp
+++ b/cppcache/include/geode/QueryService.hpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "CqQuery.hpp"
 #include "CqAttributes.hpp"
@@ -45,7 +45,7 @@ namespace client {
  * A Query is created from a QueryService and executed on the server
  * returning a SelectResults which can be either a ResultSet or a StructSet.
  */
-class CPPCACHE_EXPORT QueryService {
+class _GEODE_EXPORT QueryService {
  public:
   typedef std::vector<std::shared_ptr<CqQuery>> query_container_type;
 
diff --git a/cppcache/include/geode/Region.hpp b/cppcache/include/geode/Region.hpp
index d0da0aa..e026de6 100644
--- a/cppcache/include/geode/Region.hpp
+++ b/cppcache/include/geode/Region.hpp
@@ -24,7 +24,7 @@
 #include <iosfwd>
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheStatistics.hpp"
 #include "CacheableBuiltins.hpp"
 #include "CacheableKey.hpp"
@@ -94,7 +94,7 @@ static constexpr std::chrono::milliseconds DEFAULT_RESPONSE_TIMEOUT =
 *
 * @see RegionAttributes
 */
-class CPPCACHE_EXPORT Region : public std::enable_shared_from_this<Region> {
+class _GEODE_EXPORT Region : public std::enable_shared_from_this<Region> {
   /** @brief Public Methods
    */
  public:
@@ -1471,7 +1471,7 @@ class CPPCACHE_EXPORT Region : public std::enable_shared_from_this<Region> {
 
   mutable Cache* m_cache;
 
-  FRIEND_STD_SHARED_PTR(Region)
+  _GEODE_FRIEND_STD_SHARED_PTR(Region)
 };
 
 }  // namespace client
diff --git a/cppcache/include/geode/RegionAttributes.hpp b/cppcache/include/geode/RegionAttributes.hpp
index 38fa23a..db9493e 100644
--- a/cppcache/include/geode/RegionAttributes.hpp
+++ b/cppcache/include/geode/RegionAttributes.hpp
@@ -26,7 +26,7 @@
 
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheLoader.hpp"
 #include "ExpirationAttributes.hpp"
 #include "CacheWriter.hpp"
@@ -72,7 +72,7 @@ class AttributesMutator;
 class Cache;
 class Region;
 
-class CPPCACHE_EXPORT RegionAttributes : public Serializable {
+class _GEODE_EXPORT RegionAttributes : public Serializable {
   /**
    * @brief public static methods
    */
@@ -400,7 +400,7 @@ class CPPCACHE_EXPORT RegionAttributes : public Serializable {
   friend class RegionXmlCreation;
 
  private:
-  FRIEND_STD_SHARED_PTR(RegionAttributes)
+  _GEODE_FRIEND_STD_SHARED_PTR(RegionAttributes)
 };
 
 }  // namespace client
diff --git a/cppcache/include/geode/RegionEntry.hpp b/cppcache/include/geode/RegionEntry.hpp
index 93a6316..e5ea525 100644
--- a/cppcache/include/geode/RegionEntry.hpp
+++ b/cppcache/include/geode/RegionEntry.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_REGIONENTRY_H_
 #define GEODE_REGIONENTRY_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableKey.hpp"
 #include "CacheStatistics.hpp"
 
@@ -47,7 +47,7 @@ class Region;
  * invocation, or an <code>EntryDestroyedException</code> if the entry has been
  * destroyed.
  */
-class CPPCACHE_EXPORT RegionEntry {
+class _GEODE_EXPORT RegionEntry {
  public:
   /** Returns the key for this entry.
    *
@@ -105,7 +105,7 @@ class CPPCACHE_EXPORT RegionEntry {
   bool m_destroyed;
   friend class RegionInternal;
 
-  FRIEND_STD_SHARED_PTR(RegionEntry)
+  _GEODE_FRIEND_STD_SHARED_PTR(RegionEntry)
 };
 }  // namespace client
 }  // namespace geode
diff --git a/cppcache/include/geode/RegionEvent.hpp b/cppcache/include/geode/RegionEvent.hpp
index af3a309..834cca5 100644
--- a/cppcache/include/geode/RegionEvent.hpp
+++ b/cppcache/include/geode/RegionEvent.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_REGIONEVENT_H_
 #define GEODE_REGIONEVENT_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "Region.hpp"
 #include "CacheableKey.hpp"
 
@@ -34,7 +34,7 @@ namespace client {
 /**
  * Declares region events.
  */
-class CPPCACHE_EXPORT RegionEvent {
+class _GEODE_EXPORT RegionEvent {
  protected:
   const std::shared_ptr<Region> m_region; /**< Region for this event. */
   const std::shared_ptr<Serializable>
diff --git a/cppcache/include/geode/RegionFactory.hpp b/cppcache/include/geode/RegionFactory.hpp
index e5e4628..ca8e82f 100644
--- a/cppcache/include/geode/RegionFactory.hpp
+++ b/cppcache/include/geode/RegionFactory.hpp
@@ -22,7 +22,7 @@
 
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "AttributesFactory.hpp"
 #include "internal/chrono/duration.hpp"
 
@@ -34,7 +34,7 @@ namespace apache {
 namespace geode {
 namespace client {
 class CacheImpl;
-class CPPCACHE_EXPORT RegionFactory {
+class _GEODE_EXPORT RegionFactory {
  public:
   RegionFactory() = delete;
   ~RegionFactory() = default;
diff --git a/cppcache/include/geode/RegionService.hpp b/cppcache/include/geode/RegionService.hpp
index 49dcc4d..2cbf0e7 100644
--- a/cppcache/include/geode/RegionService.hpp
+++ b/cppcache/include/geode/RegionService.hpp
@@ -23,7 +23,7 @@
 #include <vector>
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * @file
@@ -58,7 +58,7 @@ class PdxInstanceFactory;
  *
  */
 
-class CPPCACHE_EXPORT RegionService {
+class _GEODE_EXPORT RegionService {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/RegionShortcut.hpp b/cppcache/include/geode/RegionShortcut.hpp
index 6243704..6ea99e3 100644
--- a/cppcache/include/geode/RegionShortcut.hpp
+++ b/cppcache/include/geode/RegionShortcut.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_REGIONSHORTCUT_H_
 #define GEODE_REGIONSHORTCUT_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 /**
  * Each enum represents a predefined {@link RegionAttributes} in a {@link
diff --git a/cppcache/include/geode/ResultCollector.hpp b/cppcache/include/geode/ResultCollector.hpp
index 13674a4..8fe29eb 100644
--- a/cppcache/include/geode/ResultCollector.hpp
+++ b/cppcache/include/geode/ResultCollector.hpp
@@ -23,7 +23,7 @@
 #include <memory>
 #include <chrono>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 #include "CacheableBuiltins.hpp"
 
@@ -62,7 +62,7 @@ namespace client {
  * @see FunctionService
  */
 
-class CPPCACHE_EXPORT ResultCollector {
+class _GEODE_EXPORT ResultCollector {
   /**
    * @brief public methods
    */
diff --git a/cppcache/include/geode/ResultSet.hpp b/cppcache/include/geode/ResultSet.hpp
index 68249b9..a5a1516 100644
--- a/cppcache/include/geode/ResultSet.hpp
+++ b/cppcache/include/geode/ResultSet.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_RESULTSET_H_
 #define GEODE_RESULTSET_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "SelectResults.hpp"
 #include "SelectResultsIterator.hpp"
@@ -38,7 +38,7 @@ namespace client {
  * A ResultSet may be obtained after executing a Query which is obtained from a
  * QueryService which in turn is obtained from a Cache.
  */
-class CPPCACHE_EXPORT ResultSet : public SelectResults {
+class _GEODE_EXPORT ResultSet : public SelectResults {
  public:
   /**
    * Check whether the ResultSet is modifiable.
diff --git a/cppcache/include/geode/SelectResults.hpp b/cppcache/include/geode/SelectResults.hpp
index a3b150e..8ed8717 100644
--- a/cppcache/include/geode/SelectResults.hpp
+++ b/cppcache/include/geode/SelectResults.hpp
@@ -24,7 +24,7 @@
  * @file
  */
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "ExceptionTypes.hpp"
 #include "Serializable.hpp"
 #include "CacheableBuiltins.hpp"
@@ -41,7 +41,7 @@ class SelectResultsIterator;
  * A SelectResults is obtained by executing a Query on the server.
  * This can either be a ResultSet or a StructSet.
  */
-class CPPCACHE_EXPORT SelectResults {
+class _GEODE_EXPORT SelectResults {
  public:
   /**
    * Check whether the SelectResults is modifiable.
diff --git a/cppcache/include/geode/SelectResultsIterator.hpp b/cppcache/include/geode/SelectResultsIterator.hpp
index 1815eed..323b4c9 100644
--- a/cppcache/include/geode/SelectResultsIterator.hpp
+++ b/cppcache/include/geode/SelectResultsIterator.hpp
@@ -31,8 +31,8 @@
 #include "ExceptionTypes.hpp"
 #include "SelectResults.hpp"
 #include "Serializable.hpp"
-#include "geode_base.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_base.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
@@ -49,7 +49,7 @@ class Serializable;
  * A SelectResultsIterator is obtained from a ResultSet or StructSet and
  * is used to iterate over the items available in them.
  */
-class CPPCACHE_EXPORT SelectResultsIterator {
+class _GEODE_EXPORT SelectResultsIterator {
  public:
   /**
    * Check whether the SelectResultsIterator has another item to get.
diff --git a/cppcache/include/geode/Serializable.hpp b/cppcache/include/geode/Serializable.hpp
index abd64d5..e670ef7 100644
--- a/cppcache/include/geode/Serializable.hpp
+++ b/cppcache/include/geode/Serializable.hpp
@@ -27,7 +27,7 @@
 #include <functional>
 #include <memory>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
@@ -56,7 +56,7 @@ typedef PdxSerializable *(*TypeFactoryMethodPdx)();
  * in the cache that can be serialized.
  */
 
-class CPPCACHE_EXPORT Serializable
+class _GEODE_EXPORT Serializable
     : public std::enable_shared_from_this<Serializable> {
  public:
   /**
diff --git a/cppcache/include/geode/Serializer.hpp b/cppcache/include/geode/Serializer.hpp
index 778fc10..1ebd425 100644
--- a/cppcache/include/geode/Serializer.hpp
+++ b/cppcache/include/geode/Serializer.hpp
@@ -26,7 +26,7 @@
 #include <memory>
 #include <type_traits>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "DataOutput.hpp"
 #include "DataInput.hpp"
 #include "GeodeTypeIds.hpp"
@@ -220,7 +220,7 @@ inline void readObject(apache::geode::client::DataInput& input, TObj*& array,
                        TLen& len) {
   len = input.readArrayLen();
   if (len > 0) {
-    GF_NEW(array, TObj[len]);
+    _GEODE_NEW(array, TObj[len]);
     TObj* startArray = array;
     TObj* endArray = array + len;
     while (startArray < endArray) {
diff --git a/cppcache/include/geode/Struct.hpp b/cppcache/include/geode/Struct.hpp
index c21ceaa..201f166 100644
--- a/cppcache/include/geode/Struct.hpp
+++ b/cppcache/include/geode/Struct.hpp
@@ -23,7 +23,7 @@
 #include <unordered_map>
 #include <vector>
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CacheableBuiltins.hpp"
 #include "StructSet.hpp"
 #include "SelectResults.hpp"
@@ -45,7 +45,7 @@ class StructSet;
  * returned after executing a Query obtained from a QueryService which in turn
  * is obtained from a Cache.
  */
-class CPPCACHE_EXPORT Struct : public Serializable {
+class _GEODE_EXPORT Struct : public Serializable {
  public:
   /**
    * Constructor - meant only for internal use.
diff --git a/cppcache/include/geode/StructSet.hpp b/cppcache/include/geode/StructSet.hpp
index f274999..f793149 100644
--- a/cppcache/include/geode/StructSet.hpp
+++ b/cppcache/include/geode/StructSet.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_STRUCTSET_H_
 #define GEODE_STRUCTSET_H_
 
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 #include "CqResults.hpp"
 #include "Struct.hpp"
 #include "SelectResultsIterator.hpp"
@@ -40,7 +40,7 @@ namespace client {
  * QueryService which in turn is obtained from a Cache.
  * It is the parent of a Struct which contains the field values.
  */
-class CPPCACHE_EXPORT StructSet : public CqResults {
+class _GEODE_EXPORT StructSet : public CqResults {
  public:
   /**
    * Check whether the StructSet is modifiable.
diff --git a/cppcache/include/geode/SystemProperties.hpp b/cppcache/include/geode/SystemProperties.hpp
index 99f7b9b..84f77f8 100644
--- a/cppcache/include/geode/SystemProperties.hpp
+++ b/cppcache/include/geode/SystemProperties.hpp
@@ -41,7 +41,7 @@ namespace client {
  * set from DistributedSystem::connect.
  *
  */
-class CPPCACHE_EXPORT SystemProperties {
+class _GEODE_EXPORT SystemProperties {
  public:
   /**
    * Constructor. Will set the default values first, and then overwrite with
diff --git a/cppcache/include/geode/TransactionId.hpp b/cppcache/include/geode/TransactionId.hpp
index c516a6a..5287a9e 100644
--- a/cppcache/include/geode/TransactionId.hpp
+++ b/cppcache/include/geode/TransactionId.hpp
@@ -22,7 +22,7 @@
 
 #include <memory>
 
-#include "geode_base.hpp"
+#include "internal/geode_base.hpp"
 
 namespace apache {
 namespace geode {
@@ -33,12 +33,12 @@ namespace client {
 * @see Cache#getCacheTransactionManager
 * @see CacheTransactionManager#getTransactionId
 */
-class CPPCACHE_EXPORT TransactionId {
+class _GEODE_EXPORT TransactionId {
  public:
   TransactionId();
   virtual ~TransactionId();
 
-  FRIEND_STD_SHARED_PTR(TransactionId)
+  _GEODE_FRIEND_STD_SHARED_PTR(TransactionId)
 };
 }  // namespace client
 }  // namespace geode
diff --git a/cppcache/include/geode/TypeRegistry.hpp b/cppcache/include/geode/TypeRegistry.hpp
index bbdb5ba..810d2c8 100644
--- a/cppcache/include/geode/TypeRegistry.hpp
+++ b/cppcache/include/geode/TypeRegistry.hpp
@@ -23,7 +23,7 @@
 #include <memory>
 
 #include "Serializable.hpp"
-#include "geode_globals.hpp"
+#include "internal/geode_globals.hpp"
 
 namespace apache {
 namespace geode {
diff --git a/cppcache/include/geode/WritablePdxInstance.hpp b/cppcache/include/geode/WritablePdxInstance.hpp
index 5f54999..c56fb02 100644
--- a/cppcache/include/geode/WritablePdxInstance.hpp
+++ b/cppcache/include/geode/WritablePdxInstance.hpp
@@ -37,7 +37,7 @@ class CacheableObjectArray;
  * using the {@link #setField} method.
  * To get a WritablePdxInstance call {@link PdxInstance#createWriter}.
  */
-class CPPCACHE_EXPORT WritablePdxInstance : public PdxInstance {
+class _GEODE_EXPORT WritablePdxInstance : public PdxInstance {
  public:
   /**
    * @brief destructor
diff --git a/cppcache/include/geode/internal/geode_base.hpp b/cppcache/include/geode/internal/geode_base.hpp
new file mode 100644
index 0000000..ecb86f5
--- /dev/null
+++ b/cppcache/include/geode/internal/geode_base.hpp
@@ -0,0 +1,141 @@
+/*
+ * 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
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#pragma once
+
+#ifndef GEODE_BASE_H_
+#define GEODE_BASE_H_
+
+#if defined(WIN32)
+/** Library Export */
+#define _GEODE_LIBEXP __declspec(dllexport)
+/** Library Implementation */
+#define _GEODE_LIBIMP __declspec(dllimport)
+/** Library Call */
+#define _GEODE_LIBCALL __stdcall
+/** Library Export a type */
+#define _GEODE_LIBEXPORT(type) _GEODE_LIBEXP type _GEODE_LIBCALL
+#else
+/** Library Export */
+#define _GEODE_LIBEXP
+/** Library Implementation */
+#define _GEODE_LIBIMP extern
+/** Library Call */
+#define _GEODE_LIBCALL /**/
+/** Library Export a type */
+#define _GEODE_LIBEXPORT(type) type
+#endif
+
+/** Defines a Geode export */
+#if defined(WIN32)
+#ifdef BUILD_CPPCACHE
+#define _GEODE_EXPORT _GEODE_LIBEXP
+#else
+#define _GEODE_EXPORT _GEODE_LIBIMP
+#endif
+#else
+#define _GEODE_EXPORT
+#endif /* BUILD_CPPCACHE */
+
+/**@namespace geode This namespace contains all the Geode
+ * C++ API classes, enumerations and globals.
+ */
+
+/**@namespace geode_statistics This namespace contains all the Geode
+ * C++ statistics API classes.
+ */
+
+/**@namespace apache::geode::client::TypeHelper This namespace contains type
+ * traits helper
+ * structs/classes to determine type information at compile time
+ * using typename. Useful for templates in particular.
+ */
+
+/**
+ * @file
+ *
+ *  Definitions of types and functions supported in the Geode C++ interface
+ */
+
+/** Allocates x and throws OutOfMemoryException if it fails */
+#define _GEODE_NEW(v, stmt)                                             \
+  {                                                                     \
+    try {                                                               \
+      v = new stmt;                                                     \
+    } catch (const std::bad_alloc &) {                                  \
+      throw apache::geode::client::OutOfMemoryException(                \
+          "Out of Memory while executing \"" #v " = new " #stmt ";\""); \
+    }                                                                   \
+  }
+
+/** Deletes x only if it exists */
+#define _GEODE_SAFE_DELETE(x) \
+  {                           \
+    delete x;                 \
+    x = nullptr;              \
+  }
+
+/** Deletes array x only if it exists */
+#define _GEODE_SAFE_DELETE_ARRAY(x) \
+  {                                 \
+    delete[] x;                     \
+    x = nullptr;                    \
+  }
+
+// TODO shared_ptr - Consider making con/destructors public.
+/*
+ * Allows std::shared_ptr to access protected constructors and destructors.
+ */
+#if defined(__clang__)
+#define _GEODE_FRIEND_STD_SHARED_PTR(_T)                               \
+  friend std::__libcpp_compressed_pair_imp<std::allocator<_T>, _T, 1>; \
+  friend std::__shared_ptr_emplace<_T, std::allocator<_T> >;           \
+  friend std::default_delete<_T>;
+#elif defined(__GNUC__) || defined(__SUNPRO_CC)
+#define _GEODE_FRIEND_STD_SHARED_PTR(_T) friend __gnu_cxx::new_allocator<_T>;
+#elif defined(_MSC_VER)
+#if defined(_MANAGED)
+#define _GEODE_FRIEND_STD_SHARED_PTR(_T) \
+  friend std::_Ref_count_obj<_T>;        \
+  friend std::_Ref_count<_T>;            \
+  friend std::_Ptr_base<_T>;             \
+  friend std::default_delete<_T>;        \
+  friend std::shared_ptr<_T>;
+#else
+#define _GEODE_FRIEND_STD_SHARED_PTR(_T) friend std::_Ref_count_obj<_T>;
+#endif
+#else
+#define _GEODE_FRIEND_STD_SHARED_PTR(_T)
+#endif
+
+#include <chrono>
+#include <string>
+
+namespace apache {
+namespace geode {
+namespace client {
+
+constexpr static std::chrono::milliseconds DEFAULT_QUERY_RESPONSE_TIMEOUT =
+    std::chrono::seconds{15};
+
+static const std::string EMPTY_STRING{};
+
+}  // namespace client
+}  // namespace geode
+}  // namespace apache
+
+#endif  // GEODE_BASE_H_
diff --git a/cppcache/include/geode/geode_globals.hpp b/cppcache/include/geode/internal/geode_globals.hpp
similarity index 64%
rename from cppcache/include/geode/geode_globals.hpp
rename to cppcache/include/geode/internal/geode_globals.hpp
index d21706f..6997bdc 100644
--- a/cppcache/include/geode/geode_globals.hpp
+++ b/cppcache/include/geode/internal/geode_globals.hpp
@@ -20,47 +20,6 @@
 #ifndef GEODE_GFCPP_GLOBALS_H_
 #define GEODE_GFCPP_GLOBALS_H_
 
-/**
- * @file
- */
-
-#ifdef WIN32
-#ifndef _WIN32
-#define _WIN32
-#endif
-#endif
-#ifdef _WIN32
-#ifndef WIN32
-#define WIN32
-#endif
-#endif
-
-#ifdef __linux
-#ifndef _LINUX
-#define _LINUX 1
-#endif
-#ifndef LINUX_GCC
-#define LINUX_GCC true
-#endif
-#endif
-
-#ifdef __sun
-#ifndef _SOLARIS
-#define _SOLARIS 1
-#if defined(__sparc) || defined(__sparcv9)
-#ifndef _SPARC_SOLARIS
-#define _SPARC_SOLARIS 1
-#endif
-#endif
-
-#if defined(__i386) || defined(__amd64)
-#ifndef _X86_SOLARIS
-#define _X86_SOLARIS 1
-#endif
-#endif
-#endif
-#endif
-
 #ifdef _MSC_VER
 // disable: "C++ Exception Specification ignored"
 // This is because MSVC did not implement all the C++ exception
@@ -72,24 +31,6 @@
 // disable: "<type> needs to have dll-interface to be used by clients'
 // Happens on STL member variables which are not public therefore is ok
 #pragma warning(disable : 4251)
-
-// MSVC does not use __attribute__.
-#define ATTR_UNUSED
-
-#else
-
-#ifdef _SOLARIS
-
-// Solaris does not __attribute__.
-#define ATTR_UNUSED
-
-#else
-
-// gcc and clang use __attribute__.
-#define ATTR_UNUSED __attribute__((unused))
-
-#endif
-
 #endif
 
 #ifndef __has_cpp_attribute
@@ -99,27 +40,20 @@
 #if __cplusplus >= 201402L
 #if __has_cpp_attribute(deprecated)
 // C++14 standard deprecated attribute
-#define __DEPRECATED__(msg) [[deprecated(msg)]]
+#define _GEODE_DEPRECATED_(msg) [[deprecated(msg)]]
 #else
 #error "__has_cpp_attribute(deprecated)"
 #endif
 #elif defined(__GNUC__)
 // GCC style deprecated attribute
-#define __DEPRECATED__(msg) __attribute__((deprecated(msg)))
+#define _GEODE_DEPRECATED_(msg) __attribute__((deprecated(msg)))
 #elif defined(_MSC_VER)
 // Visual C++ style deprecated attribute
-#define __DEPRECATED__(msg) __declspec(deprecated(msg))
+#define _GEODE_DEPRECATED_(msg) __declspec(deprecated(msg))
 #else
-#define __DEPRECATED__(msg)
-#endif
-
-#ifdef _WIN32
-#if WINVER == 0x0500
-#endif
+#define _GEODE_DEPRECATED_(msg)
 #endif
 
 #include "geode_base.hpp"
 
-#include <cstdint>
-
 #endif  // GEODE_GFCPP_GLOBALS_H_
diff --git a/cppcache/integration-test/CacheHelper.cpp b/cppcache/integration-test/CacheHelper.cpp
index 6072b9b..07bf178 100644
--- a/cppcache/integration-test/CacheHelper.cpp
+++ b/cppcache/integration-test/CacheHelper.cpp
@@ -33,6 +33,7 @@
 #include "TimeBomb.hpp"
 #include "Utils.hpp"
 #include "CacheImpl.hpp"
+#include "config.h"
 
 #include "CacheHelper.hpp"
 #define __DUNIT_NO_MAIN__
diff --git a/cppcache/integration-test/CacheHelper.hpp b/cppcache/integration-test/CacheHelper.hpp
index 0362262..00f2038 100644
--- a/cppcache/integration-test/CacheHelper.hpp
+++ b/cppcache/integration-test/CacheHelper.hpp
@@ -34,6 +34,7 @@
 #include "TimeBomb.hpp"
 #include "DistributedSystemImpl.hpp"
 #include "Utils.hpp"
+#include "config.h"
 
 #ifndef ROOT_NAME
 #define ROOT_NAME "Root"
diff --git a/cppcache/integration-test/LibraryCallbacks.cpp b/cppcache/integration-test/LibraryCallbacks.cpp
index a22b01e..3f00117 100644
--- a/cppcache/integration-test/LibraryCallbacks.cpp
+++ b/cppcache/integration-test/LibraryCallbacks.cpp
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include <ace/Time_Value.h>
 #include <ace/OS.h>
diff --git a/cppcache/integration-test/ThinClientPdxSerializer.hpp b/cppcache/integration-test/ThinClientPdxSerializer.hpp
index 6f76328..338b9e8 100644
--- a/cppcache/integration-test/ThinClientPdxSerializer.hpp
+++ b/cppcache/integration-test/ThinClientPdxSerializer.hpp
@@ -54,7 +54,6 @@ const char* poolNames[] = {"Pool1", "Pool2", "Pool3"};
 const char* locHostPort =
     CacheHelper::getLocatorHostPort(isLocator, isLocalServer, 1);
 bool isPoolConfig = false;  // To track if pool case is running
-static bool m_useWeakHashMap ATTR_UNUSED = false;
 
 void initClient(const bool isthinClient, bool isPdxIgnoreUnreadFields) {
   LOGINFO("initClient: isPdxIgnoreUnreadFields = %d ", isPdxIgnoreUnreadFields);
@@ -208,14 +207,12 @@ DUNIT_TASK_DEFINITION(CLIENT2, JavaGet)
     auto keyport1 = CacheableKey::create(1);
     LOGDEBUG("JavaGet-2 Line_314");
     auto obj1 = std::dynamic_pointer_cast<PdxWrapper>(regPtr0->get(keyport1));
-    auto npt1 ATTR_UNUSED =
-        reinterpret_cast<PdxTests::NonPdxType*>(obj1->getObject());
+    auto npt1 = reinterpret_cast<PdxTests::NonPdxType*>(obj1->getObject());
     LOGDEBUG("JavaGet-3 Line_316");
     auto keyport2 = CacheableKey::create("putFromjava");
     LOGDEBUG("JavaGet-4 Line_316");
     auto obj2 = std::dynamic_pointer_cast<PdxWrapper>(regPtr0->get(keyport2));
-    auto npt2 ATTR_UNUSED =
-        reinterpret_cast<PdxTests::NonPdxType*>(obj2->getObject());
+    auto npt2 = reinterpret_cast<PdxTests::NonPdxType*>(obj2->getObject());
     LOGDEBUG("JavaGet-5 Line_320");
   }
 END_TASK_DEFINITION
diff --git a/cppcache/integration-test/ThinClientPdxSerializers.hpp b/cppcache/integration-test/ThinClientPdxSerializers.hpp
index 468d68e..8183256 100644
--- a/cppcache/integration-test/ThinClientPdxSerializers.hpp
+++ b/cppcache/integration-test/ThinClientPdxSerializers.hpp
@@ -1,8 +1,3 @@
-#pragma once
-
-#ifndef GEODE_INTEGRATION_TEST_THINCLIENTPDXSERIALIZERS_H_
-#define GEODE_INTEGRATION_TEST_THINCLIENTPDXSERIALIZERS_H_
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -20,6 +15,11 @@
  * limitations under the License.
  */
 
+#pragma once
+
+#ifndef GEODE_INTEGRATION_TEST_THINCLIENTPDXSERIALIZERS_H_
+#define GEODE_INTEGRATION_TEST_THINCLIENTPDXSERIALIZERS_H_
+
 static const char *CLASSNAME1 = "PdxTests.PdxType";
 static const char *CLASSNAME2 = "PdxTests.Address";
 
@@ -85,8 +85,7 @@ class TestPdxSerializer : public PdxSerializer {
                                      ->getPdxSerializer());
 
     try {
-      int32_t *Lengtharr;
-      GF_NEW(Lengtharr, int32_t[2]);
+      auto Lengtharr = new int32_t[2];
       int32_t arrLen = 0;
       npt->m_byteByteArray =
           pr.readArrayOfByteArrays("m_byteByteArray", arrLen, &Lengtharr);
diff --git a/cppcache/integration-test/fw_dunit.hpp b/cppcache/integration-test/fw_dunit.hpp
index 85422f7..37e4266 100644
--- a/cppcache/integration-test/fw_dunit.hpp
+++ b/cppcache/integration-test/fw_dunit.hpp
@@ -145,14 +145,14 @@ END_TASK(validate)
 
 // Create a test task instance, x is the process tag identifying which process
 //   to run in. y is a unique task identifier used in generating a class name.
-#define DUNIT_TASK(x, y)                                            \
-  class DCLASSNAME(y) : virtual public dunit::Task {                \
-   public:                                                          \
-    DCLASSNAME(y)() { init(x); }                                    \
-                                                                    \
-   public:                                                          \
-    virtual void doTask() {                                         \
-      const char* fwtest_Name ATTR_UNUSED = DTASKDESC(y, __LINE__); \
+#define DUNIT_TASK(x, y)                                       \
+  class DCLASSNAME(y) : virtual public dunit::Task {           \
+   public:                                                     \
+    DCLASSNAME(y)() { init(x); }                               \
+                                                               \
+   public:                                                     \
+    virtual void doTask() {                                    \
+      static const char* fwtest_Name = DTASKDESC(y, __LINE__); \
       try {
 // Close the class definition produced by DUNIT_TASK macro.
 // y is a unique identifier used to generate an instance variable name.
@@ -193,14 +193,14 @@ END_TASK(validate)
   }                                               \
   SYMJOIN(a_, __LINE__);
 
-#define DUNIT_TASK_DEFINITION(x, y)                                 \
-  class DCLASSDEF(y) : virtual public dunit::Task {                 \
-   public:                                                          \
-    DCLASSDEF(y)() { init(x); }                                     \
-                                                                    \
-   public:                                                          \
-    virtual void doTask() {                                         \
-      const char* fwtest_Name ATTR_UNUSED = DTASKDESC(y, __LINE__); \
+#define DUNIT_TASK_DEFINITION(x, y)                            \
+  class DCLASSDEF(y) : virtual public dunit::Task {            \
+   public:                                                     \
+    DCLASSDEF(y)() { init(x); }                                \
+                                                               \
+   public:                                                     \
+    virtual void doTask() {                                    \
+      static const char* fwtest_Name = DTASKDESC(y, __LINE__); \
       try {
 #define END_TASK_DEFINITION                       \
   }                                               \
@@ -220,8 +220,7 @@ END_TASK(validate)
   }                                               \
   }                                               \
   ;
-#define CALL_TASK(y) \
-  DCLASSDEF(y) * DVARNAME(y) ATTR_UNUSED = new DCLASSDEF(y)();
+#define CALL_TASK(y) DCLASSDEF(y) * DVARNAME(y) = new DCLASSDEF(y)();
 
 #define DUNIT_MAIN         \
   class DCLASSNAME(Main) { \
diff --git a/cppcache/integration-test/fw_helper.hpp b/cppcache/integration-test/fw_helper.hpp
index 090bf6e..2152114 100644
--- a/cppcache/integration-test/fw_helper.hpp
+++ b/cppcache/integration-test/fw_helper.hpp
@@ -237,7 +237,7 @@ int main(int argc, char* argv[])
                                            \
    public:                                 \
     virtual void doTest() {                \
-      const char* fwtest_Name ATTR_UNUSED = #x;
+      static const char* fwtest_Name = #x;
 #define END_TEST(x) \
   }                 \
   }                 \
diff --git a/cppcache/integration-test/testCache.cpp b/cppcache/integration-test/testCache.cpp
index 464df77..5c18eec 100644
--- a/cppcache/integration-test/testCache.cpp
+++ b/cppcache/integration-test/testCache.cpp
@@ -28,7 +28,6 @@ using namespace apache::geode::client;
 
 BEGIN_TEST(CacheFunction)
   char* host_name = (char*)"TESTCACHE";
-  uint16_t port ATTR_UNUSED = 0;
   const uint32_t totalSubRegions = 3;
   char* regionName = (char*)"TESTCACHE_ROOT_REGION";
   char* subRegionName1 = (char*)"TESTCACHE_SUB_REGION1";
diff --git a/cppcache/integration-test/testFwPerf.cpp b/cppcache/integration-test/testFwPerf.cpp
index ffed718..23ed920 100644
--- a/cppcache/integration-test/testFwPerf.cpp
+++ b/cppcache/integration-test/testFwPerf.cpp
@@ -23,7 +23,6 @@ perf::PerfSuite perfSuite("FwPerf");
 
 class LocalPutTask : public perf::Thread {
  private:
-  int m_iters ATTR_UNUSED;
 
  public:
   LocalPutTask() : Thread() {}
diff --git a/cppcache/integration-test/testOverflowPutGetSqLite.cpp b/cppcache/integration-test/testOverflowPutGetSqLite.cpp
index 143595c..47e017b 100644
--- a/cppcache/integration-test/testOverflowPutGetSqLite.cpp
+++ b/cppcache/integration-test/testOverflowPutGetSqLite.cpp
@@ -320,9 +320,9 @@ void setSqLiteProperties(std::shared_ptr<Properties>& sqliteProperties,
                          int maxPageCount = 1073741823, int pageSize = 65536,
                          std::string pDir = sqlite_dir) {
   sqliteProperties = Properties::create();
-  sqliteProperties->insert(MAX_PAGE_COUNT, maxPageCount);
-  sqliteProperties->insert(PAGE_SIZE, pageSize);
-  sqliteProperties->insert(PERSISTENCE_DIR, pDir.c_str());
+  sqliteProperties->insert(PersistenceManager::MAX_PAGE_COUNT, maxPageCount);
+  sqliteProperties->insert(PersistenceManager::PAGE_SIZE, pageSize);
+  sqliteProperties->insert(PersistenceManager::PERSISTENCE_DIR, pDir.c_str());
   ASSERT(sqliteProperties != nullptr,
          "Expected sqlite properties to be NON-nullptr");
 }
diff --git a/cppcache/integration-test/testSerialization.cpp b/cppcache/integration-test/testSerialization.cpp
index fe375ed..26f0006 100644
--- a/cppcache/integration-test/testSerialization.cpp
+++ b/cppcache/integration-test/testSerialization.cpp
@@ -15,7 +15,12 @@
  * limitations under the License.
  */
 
-#include <geode/geode_base.hpp>
+#define __STDC_FORMAT_MACROS
+#include <inttypes.h>
+
+#include <memory>
+
+#include <geode/internal/geode_base.hpp>
 
 #include "fw_dunit.hpp"
 #include "ThinClientHelper.hpp"
@@ -31,7 +36,6 @@
 #include <CppCacheLibrary.hpp>
 
 #include "CacheHelper.hpp"
-#include <memory>
 
 using namespace apache::geode::client;
 
diff --git a/cppcache/integration-test/testThinClientBigValue.cpp b/cppcache/integration-test/testThinClientBigValue.cpp
index 11b6bd6..b8f53e0 100644
--- a/cppcache/integration-test/testThinClientBigValue.cpp
+++ b/cppcache/integration-test/testThinClientBigValue.cpp
@@ -15,7 +15,10 @@
  * limitations under the License.
  */
 
-#include <geode/geode_base.hpp>
+#define __STDC_FORMAT_MACROS
+#include <inttypes.h>
+
+#include <geode/internal/geode_base.hpp>
 
 #include "fw_dunit.hpp"
 #include "ThinClientHelper.hpp"
@@ -148,8 +151,7 @@ DUNIT_TASK(CLIENT2, VerifyPuts)
   {
     auto regPtr = getHelper()->getRegion(regionNames[0]);
     // region should already have n entries...
-    int entriesExpected ATTR_UNUSED =
-        dunit::globals()->getIntValue("entriesToExpect");
+    int entriesExpected = dunit::globals()->getIntValue("entriesToExpect");
 
     for (int i = 0; i <= MAX_PAYLOAD; grow(&i)) {
       char keybuf[100];
diff --git a/cppcache/integration-test/testThinClientCq.cpp b/cppcache/integration-test/testThinClientCq.cpp
index 758953b..1cf80ee 100644
--- a/cppcache/integration-test/testThinClientCq.cpp
+++ b/cppcache/integration-test/testThinClientCq.cpp
@@ -381,7 +381,7 @@ END_TASK_DEFINITION
 DUNIT_TASK_DEFINITION(CLIENT1, StepThree)
   {
     uint8_t i = 0;
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     auto pool =
         getHelper()->getCache()->getPoolManager().find(regionNamesCq[0]);
@@ -484,7 +484,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     auto pool =
         getHelper()->getCache()->getPoolManager().find(regionNamesCq[0]);
diff --git a/cppcache/integration-test/testThinClientCqDelta.cpp b/cppcache/integration-test/testThinClientCqDelta.cpp
index 11a0d43..e223466 100644
--- a/cppcache/integration-test/testThinClientCqDelta.cpp
+++ b/cppcache/integration-test/testThinClientCqDelta.cpp
@@ -140,7 +140,7 @@ const char* keys[] = {"Key-1", "Key-2", "Key-3", "Key-4"};
 const char* regionNames[] = {"DistRegionAck", "DistRegionAck1"};
 
 const bool USE_ACK = true;
-const bool NO_ACK ATTR_UNUSED = false;
+const bool NO_ACK = false;
 
 DUNIT_TASK_DEFINITION(CLIENT1, CreateClient1)
   {
diff --git a/cppcache/integration-test/testThinClientCqDurable.cpp b/cppcache/integration-test/testThinClientCqDurable.cpp
index a7d11e8..d202e32 100644
--- a/cppcache/integration-test/testThinClientCqDurable.cpp
+++ b/cppcache/integration-test/testThinClientCqDurable.cpp
@@ -370,7 +370,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepThree)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     auto pool =
         getHelper()->getCache()->getPoolManager().find(regionNamesCq[0]);
@@ -459,7 +459,7 @@ void client1Up() {
   createRegionForCQ(regionNamesCq[0], USE_ACK, true);
 
   LOG("Client1Up complete.");
-  QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+  QueryHelper::getHelper();
 
   std::shared_ptr<QueryService> qs = getHelper()
            ->getCache()
@@ -501,7 +501,7 @@ void client1UpDurableCQList() {
   createRegionForCQ(regionNamesCq[0], USE_ACK, true);
 
   LOG("Client1Up complete.");
-  QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+  QueryHelper::getHelper();
 }
 
 void client2UpDurableCQList() {
@@ -509,7 +509,7 @@ void client2UpDurableCQList() {
   initClientWithId(1, true);
   createRegionForCQ(regionNamesCq[0], USE_ACK, true);
   LOG("Client2Up complete.");
-  QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+  QueryHelper::getHelper();
 }
 
 DUNIT_TASK_DEFINITION(CLIENT1, Client1Up_Pool)
@@ -526,7 +526,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     auto pool =
         getHelper()->getCache()->getPoolManager().find(regionNamesCq[0]);
diff --git a/cppcache/integration-test/testThinClientCqIR.cpp b/cppcache/integration-test/testThinClientCqIR.cpp
index c96d413..da090e9 100644
--- a/cppcache/integration-test/testThinClientCqIR.cpp
+++ b/cppcache/integration-test/testThinClientCqIR.cpp
@@ -156,7 +156,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, QueryData)
   {
-    auto& qh ATTR_UNUSED = QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     // using region name as pool name
     auto pool =
diff --git a/cppcache/integration-test/testThinClientDeltaWithNotification.cpp b/cppcache/integration-test/testThinClientDeltaWithNotification.cpp
index 9ba489f..e7f0bd9 100644
--- a/cppcache/integration-test/testThinClientDeltaWithNotification.cpp
+++ b/cppcache/integration-test/testThinClientDeltaWithNotification.cpp
@@ -149,7 +149,7 @@ const char* regionNames[] = {"DistRegionAck", "DistRegionAck1",
                              "DistRegionAck2"};
 
 const bool USE_ACK = true;
-const bool NO_ACK ATTR_UNUSED = false;
+const bool NO_ACK = false;
 
 DUNIT_TASK_DEFINITION(CLIENT1, CreateClient1)
   {
diff --git a/cppcache/integration-test/testThinClientHAQueryFailover.cpp b/cppcache/integration-test/testThinClientHAQueryFailover.cpp
index 6ccb1ac..6c4a82c 100644
--- a/cppcache/integration-test/testThinClientHAQueryFailover.cpp
+++ b/cppcache/integration-test/testThinClientHAQueryFailover.cpp
@@ -135,7 +135,7 @@ void createRegion(const char* name, bool ackMode,
 const char* regionNames[] = {"Portfolios", "Positions"};
 
 const bool USE_ACK = true;
-const bool NO_ACK ATTR_UNUSED = false;
+const bool NO_ACK = false;
 
 KillServerThread* kst = nullptr;
 
diff --git a/cppcache/integration-test/testThinClientInterest1_Bug1001.cpp b/cppcache/integration-test/testThinClientInterest1_Bug1001.cpp
index e460d06..70febc1 100644
--- a/cppcache/integration-test/testThinClientInterest1_Bug1001.cpp
+++ b/cppcache/integration-test/testThinClientInterest1_Bug1001.cpp
@@ -235,7 +235,7 @@ std::shared_ptr<CacheableString> getUString(int index) {
      try {
        const wchar_t* str = L"Pivotal";
        auto lCStringP = CacheableString::create(str);
-       auto&& lRtnCd ATTR_UNUSED = lCStringP->value();
+       lCStringP->value();
      } catch (const Exception& geodeExcp) {
        printf("%s: %s", geodeExcp.getName().c_str(), geodeExcp.what());
        FAIL("Should not have got exception.");
@@ -247,7 +247,7 @@ std::shared_ptr<CacheableString> getUString(int index) {
            "17"
            "\\u53f7";
        auto lCStringP = CacheableString::create(str);
-       auto&& lRtnCd ATTR_UNUSED = lCStringP->value();
+       lCStringP->value();
      } catch (const Exception& geodeExcp) {
        printf("%s: %s", geodeExcp.getName().c_str(), geodeExcp.what());
        FAIL("Should not have got exception.");
diff --git a/cppcache/integration-test/testThinClientLRUExpiration.cpp b/cppcache/integration-test/testThinClientLRUExpiration.cpp
index 6ec8299..4d7861c 100644
--- a/cppcache/integration-test/testThinClientLRUExpiration.cpp
+++ b/cppcache/integration-test/testThinClientLRUExpiration.cpp
@@ -50,7 +50,7 @@ const char* regionNames[] = {"DistRegionAck1", "DistRegionAck2",
                              "DistRegionAck3", "DistRegionAck4",
                              "DistRegionAck5", "DistRegionAck"};
 const bool USE_ACK = true;
-const bool NO_ACK ATTR_UNUSED = false;
+const bool NO_ACK = false;
 std::shared_ptr<TallyListener> regListener;
 std::shared_ptr<TallyWriter> regWriter;
 bool registerKey = true;
diff --git a/cppcache/integration-test/testThinClientNotificationWithDeltaWithoutcache.cpp b/cppcache/integration-test/testThinClientNotificationWithDeltaWithoutcache.cpp
index 9536f3a..70eb91e 100644
--- a/cppcache/integration-test/testThinClientNotificationWithDeltaWithoutcache.cpp
+++ b/cppcache/integration-test/testThinClientNotificationWithDeltaWithoutcache.cpp
@@ -102,7 +102,7 @@ const char* keys[] = {"Key-1", "Key-2", "Key-3", "Key-4"};
 const char* regionNames[] = {"DistRegionAck", "DistRegionAck1"};
 
 const bool USE_ACK = true;
-const bool NO_ACK ATTR_UNUSED = false;
+const bool NO_ACK = false;
 
 DUNIT_TASK_DEFINITION(CLIENT1, CreateClient1)
   {
diff --git a/cppcache/integration-test/testThinClientPRSingleHop.cpp b/cppcache/integration-test/testThinClientPRSingleHop.cpp
index b3f8ce7..fedf604 100644
--- a/cppcache/integration-test/testThinClientPRSingleHop.cpp
+++ b/cppcache/integration-test/testThinClientPRSingleHop.cpp
@@ -113,7 +113,6 @@ class putThread : public ACE_Task_Base {
   int getFailureCount() { return m_failureCount; }
 
   int svc(void) {
-    bool networkhop ATTR_UNUSED = false;
     std::shared_ptr<CacheableKey> keyPtr;
     int rand;
     for (int i = m_min; i < m_max; i++) {
@@ -1246,7 +1245,7 @@ DUNIT_MAIN
       CALL_TASK(CheckPrSingleHopForIntKeysTask);
       size_t totKeyTypes =
           CacheableWrapperFactory::getRegisteredKeyTypes().size();
-      size_t totValTypes ATTR_UNUSED =
+      size_t totValTypes =
           CacheableWrapperFactory::getRegisteredValueTypes().size();
 
       CALL_TASK(CheckPrSingleHopForIntKeysTask);
diff --git a/cppcache/integration-test/testThinClientPdxEnum.cpp b/cppcache/integration-test/testThinClientPdxEnum.cpp
index 780b3f4..87e201f 100644
--- a/cppcache/integration-test/testThinClientPdxEnum.cpp
+++ b/cppcache/integration-test/testThinClientPdxEnum.cpp
@@ -123,7 +123,7 @@ DUNIT_TASK_DEFINITION(CLIENT1, pdxEnumQuery)
       ASSERT(re->getID() == 1, "query should have return id 1");
     }
 
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
     std::shared_ptr<QueryService> qs = nullptr;
     auto pool1 = findPool("__TEST_POOL1__");
     qs = pool1->getQueryService();
diff --git a/cppcache/integration-test/testThinClientPdxInstance.cpp b/cppcache/integration-test/testThinClientPdxInstance.cpp
index 48f7ea7..53d172f 100644
--- a/cppcache/integration-test/testThinClientPdxInstance.cpp
+++ b/cppcache/integration-test/testThinClientPdxInstance.cpp
@@ -50,7 +50,7 @@ CacheHelper* cacheHelper = nullptr;
 #define SERVER2 s2p2
 static bool isLocator = false;
 const bool USE_ACK = true;
-const bool NO_ACK ATTR_UNUSED = false;
+const bool NO_ACK = false;
 
 const char* locatorsG =
     CacheHelper::getLocatorHostPort(isLocator, isLocalServer, 1);
diff --git a/cppcache/integration-test/testThinClientPdxTests.cpp b/cppcache/integration-test/testThinClientPdxTests.cpp
index 57cf8cd..a00f28e 100644
--- a/cppcache/integration-test/testThinClientPdxTests.cpp
+++ b/cppcache/integration-test/testThinClientPdxTests.cpp
@@ -501,7 +501,6 @@ DUNIT_TASK_DEFINITION(CLIENT1, testPutWithMultilevelInheritance)
     }
 
     auto regPtr0 = getHelper()->getRegion("DistRegionAck");
-    int expectedExceptionCount ATTR_UNUSED = 0;
 
     // Put operation
     auto keyport = CacheableKey::create(1);
diff --git a/cppcache/integration-test/testThinClientPoolAttrTest.cpp b/cppcache/integration-test/testThinClientPoolAttrTest.cpp
index 38c1677..a72ced5 100644
--- a/cppcache/integration-test/testThinClientPoolAttrTest.cpp
+++ b/cppcache/integration-test/testThinClientPoolAttrTest.cpp
@@ -253,7 +253,6 @@ DUNIT_TASK(CLIENT1, ClientOp)
     // min.
     SLEEP(5000);
     // Check current # connections they should be == min
-    char number[20] ATTR_UNUSED = {0};
     std::string poolName =
         getHelper()->getRegion(poolRegNames[0])->getAttributes()->getPoolName();
     int level = TestUtils::getCacheImpl(getHelper()->cachePtr)
diff --git a/cppcache/integration-test/testThinClientPoolExecuteFunction.cpp b/cppcache/integration-test/testThinClientPoolExecuteFunction.cpp
index d9ead3e..899a76c 100644
--- a/cppcache/integration-test/testThinClientPoolExecuteFunction.cpp
+++ b/cppcache/integration-test/testThinClientPoolExecuteFunction.cpp
@@ -1146,7 +1146,6 @@ class putThread : public ACE_Task_Base {
   int getTimeoutCount() { return m_timeoutCount; }
 
   int svc(void) {
-    bool networkhop ATTR_UNUSED = false;
   std::shared_ptr<Cacheable> args = nullptr;
   std::shared_ptr<ResultCollector> rPtr = nullptr;
     auto regPtr0 = getHelper()->getRegion(poolRegNames[0]);
diff --git a/cppcache/integration-test/testThinClientPoolExecuteFunctionDisableChunkHandlerThread.cpp b/cppcache/integration-test/testThinClientPoolExecuteFunctionDisableChunkHandlerThread.cpp
index 9383985..f71f131 100644
--- a/cppcache/integration-test/testThinClientPoolExecuteFunctionDisableChunkHandlerThread.cpp
+++ b/cppcache/integration-test/testThinClientPoolExecuteFunctionDisableChunkHandlerThread.cpp
@@ -210,7 +210,6 @@ class putThread : public ACE_Task_Base {
   int getTimeoutCount() { return m_timeoutCount; }
 
   int svc(void) {
-    bool networkhop ATTR_UNUSED = false;
     std::shared_ptr<CacheableKey> keyPtr;
     std::shared_ptr<Cacheable> args = nullptr;
     std::shared_ptr<ResultCollector> rPtr = nullptr;
diff --git a/cppcache/integration-test/testThinClientPutWithDelta.cpp b/cppcache/integration-test/testThinClientPutWithDelta.cpp
index 44356bc..3bfebc2 100644
--- a/cppcache/integration-test/testThinClientPutWithDelta.cpp
+++ b/cppcache/integration-test/testThinClientPutWithDelta.cpp
@@ -96,7 +96,7 @@ const char* keys[] = {"Key-1", "Key-2", "Key-3", "Key-4"};
 const char* regionNames[] = {"DistRegionAck", "DistRegionNoAck"};
 
 const bool USE_ACK = true;
-const bool NO_ACK ATTR_UNUSED = false;
+const bool NO_ACK = false;
 
 DUNIT_TASK_DEFINITION(CLIENT1, CreateClient1_UsePools)
   {
diff --git a/cppcache/integration-test/testThinClientRemoteQueryRS.cpp b/cppcache/integration-test/testThinClientRemoteQueryRS.cpp
index edffd38..78dc60b 100644
--- a/cppcache/integration-test/testThinClientRemoteQueryRS.cpp
+++ b/cppcache/integration-test/testThinClientRemoteQueryRS.cpp
@@ -487,7 +487,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, DoQueryRSError)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
diff --git a/cppcache/integration-test/testThinClientRemoteQuerySS.cpp b/cppcache/integration-test/testThinClientRemoteQuerySS.cpp
index ec269d0..0a9dbfb 100644
--- a/cppcache/integration-test/testThinClientRemoteQuerySS.cpp
+++ b/cppcache/integration-test/testThinClientRemoteQuerySS.cpp
@@ -547,7 +547,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, DoQuerySSError)
   {
-    auto* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
diff --git a/cppcache/integration-test/testThinClientRemoteQueryTimeout.cpp b/cppcache/integration-test/testThinClientRemoteQueryTimeout.cpp
index fb09ffe..a9e6a55 100644
--- a/cppcache/integration-test/testThinClientRemoteQueryTimeout.cpp
+++ b/cppcache/integration-test/testThinClientRemoteQueryTimeout.cpp
@@ -139,7 +139,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepThree)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
@@ -182,7 +182,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
@@ -221,7 +221,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepFive)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
@@ -264,7 +264,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepSix)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
@@ -303,7 +303,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepSeven)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
@@ -355,7 +355,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, StepEight)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
@@ -404,7 +404,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, verifyNegativeValueTimeout)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
@@ -449,7 +449,7 @@ END_TASK_DEFINITION
 
 DUNIT_TASK_DEFINITION(CLIENT1, verifyLargeValueTimeout)
   {
-    QueryHelper* qh ATTR_UNUSED = &QueryHelper::getHelper();
+    QueryHelper::getHelper();
 
     std::shared_ptr<QueryService> qs = nullptr;
     if (isPoolConfig) {
diff --git a/cppcache/integration-test/testThinClientRemoteRegionQuery.cpp b/cppcache/integration-test/testThinClientRemoteRegionQuery.cpp
index 1cb3410..2d25c18 100644
--- a/cppcache/integration-test/testThinClientRemoteRegionQuery.cpp
+++ b/cppcache/integration-test/testThinClientRemoteRegionQuery.cpp
@@ -268,7 +268,7 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
     }
 
     try {
-      bool existsValue ATTR_UNUSED = region->existsValue("");
+      region->existsValue("");
       FAIL("Expected IllegalArgumentException exception for empty predicate");
     } catch (apache::geode::client::IllegalArgumentException ex) {
       LOG("got expected IllegalArgumentException exception for empty "
@@ -277,8 +277,8 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
     }
 
     try {
-      bool existsValue ATTR_UNUSED = region->existsValue(
-          (regionQueries[0].query()), std::chrono::seconds(2200000));
+      region->existsValue((regionQueries[0].query()),
+                          std::chrono::seconds(2200000));
       FAIL("Expected IllegalArgumentException exception for invalid timeout");
     } catch (apache::geode::client::IllegalArgumentException ex) {
       LOG("got expected IllegalArgumentException exception for invalid "
@@ -287,8 +287,7 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
     }
 
     try {
-      bool existsValue ATTR_UNUSED = region->existsValue(
-          (regionQueries[0].query()), std::chrono::seconds(-1));
+      region->existsValue((regionQueries[0].query()), std::chrono::seconds(-1));
       FAIL("Expected IllegalArgumentException exception for invalid timeout");
     } catch (apache::geode::client::IllegalArgumentException ex) {
       LOG("got expected IllegalArgumentException exception for invalid "
@@ -296,7 +295,7 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
       LOG(ex.what());
     }
     try {
-      bool existsValue ATTR_UNUSED = region->existsValue("bad predicate");
+      region->existsValue("bad predicate");
       FAIL("Expected QueryException exception for wrong predicate");
     } catch (QueryException ex) {
       LOG("got expected QueryException exception for wrong predicate:");
diff --git a/cppcache/integration-test/testThinClientSecurityCQAuthorizationMU.cpp b/cppcache/integration-test/testThinClientSecurityCQAuthorizationMU.cpp
index 1b69b59..91ff752 100644
--- a/cppcache/integration-test/testThinClientSecurityCQAuthorizationMU.cpp
+++ b/cppcache/integration-test/testThinClientSecurityCQAuthorizationMU.cpp
@@ -356,7 +356,6 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
     char buf[1024];
 
     uint8_t i = 0;
-    int j ATTR_UNUSED = 0;
     uint32_t inserts[MAX_LISTNER];
     uint32_t updates[MAX_LISTNER];
     uint32_t deletes[MAX_LISTNER];
@@ -419,7 +418,6 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour2)
     char buf[1024];
 
     uint8_t i = 0;
-    int j ATTR_UNUSED = 0;
     uint32_t inserts[MAX_LISTNER];
     uint32_t updates[MAX_LISTNER];
     uint32_t deletes[MAX_LISTNER];
diff --git a/cppcache/integration-test/testThinClientSecurityDurableCQAuthorizationMU.cpp b/cppcache/integration-test/testThinClientSecurityDurableCQAuthorizationMU.cpp
index 0d68987..aa69dae 100644
--- a/cppcache/integration-test/testThinClientSecurityDurableCQAuthorizationMU.cpp
+++ b/cppcache/integration-test/testThinClientSecurityDurableCQAuthorizationMU.cpp
@@ -390,7 +390,6 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour)
     char buf[1024];
 
     uint8_t i = 0;
-    int j ATTR_UNUSED = 0;
     uint32_t inserts[MAX_LISTNER];
     uint32_t updates[MAX_LISTNER];
     uint32_t deletes[MAX_LISTNER];
@@ -445,7 +444,6 @@ DUNIT_TASK_DEFINITION(CLIENT1, StepFour2)
     char buf[1024];
 
     uint8_t i = 0;
-    int j ATTR_UNUSED = 0;
     uint32_t inserts[MAX_LISTNER];
     uint32_t updates[MAX_LISTNER];
     uint32_t deletes[MAX_LISTNER];
diff --git a/cppcache/integration-test/testXmlCacheCreationWithOverFlow.cpp b/cppcache/integration-test/testXmlCacheCreationWithOverFlow.cpp
index 98d20b7..7b2d383 100644
--- a/cppcache/integration-test/testXmlCacheCreationWithOverFlow.cpp
+++ b/cppcache/integration-test/testXmlCacheCreationWithOverFlow.cpp
@@ -93,7 +93,6 @@ int testXmlCacheCreationWithOverflow() {
   }
   auto regPtr1 = vrp.at(0);
 
-  uint32_t i ATTR_UNUSED = 0;
   std::cout << "Test if the number of sub regions with the root region Root1 are "
           "correct"
        << std::endl;
diff --git a/cppcache/src/AdminRegion.cpp b/cppcache/src/AdminRegion.cpp
index ada54b6..e2610e7 100644
--- a/cppcache/src/AdminRegion.cpp
+++ b/cppcache/src/AdminRegion.cpp
@@ -132,7 +132,7 @@ void AdminRegion::close() {
   ThinClientPoolDM* pool = dynamic_cast<ThinClientPoolDM*>(m_distMngr);
   if (pool == nullptr) {
     m_distMngr->destroy();
-    GF_SAFE_DELETE(m_distMngr);
+    _GEODE_SAFE_DELETE(m_distMngr);
   }
 }
 
diff --git a/cppcache/src/AdminRegion.hpp b/cppcache/src/AdminRegion.hpp
index 2953796..9ded6b2 100644
--- a/cppcache/src/AdminRegion.hpp
+++ b/cppcache/src/AdminRegion.hpp
@@ -28,6 +28,7 @@
 
 #include "ReadWriteLock.hpp"
 #include "NonCopyable.hpp"
+#include "ErrType.hpp"
 
 namespace apache {
 namespace geode {
@@ -68,7 +69,7 @@ class AdminRegion : private NonCopyable,
 
   ~AdminRegion();
 
-  FRIEND_STD_SHARED_PTR(AdminRegion)
+  _GEODE_FRIEND_STD_SHARED_PTR(AdminRegion)
 
  public:
   static std::shared_ptr<AdminRegion> create(
diff --git a/cppcache/src/Assert.hpp b/cppcache/src/Assert.hpp
index aa95ac1..e3c09b6 100644
--- a/cppcache/src/Assert.hpp
+++ b/cppcache/src/Assert.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_ASSERT_H_
 #define GEODE_ASSERT_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 /**
  * @file
@@ -37,7 +37,7 @@ namespace client {
  *
  * Declares debugging assertion reporting functions.
  */
-class CPPCACHE_EXPORT Assert {
+class _GEODE_EXPORT Assert {
  public:
   /** If the given expression is true, does nothing, otherwise calls
   * @ref throwAssertion .
diff --git a/cppcache/src/AutoDelete.hpp b/cppcache/src/AutoDelete.hpp
index dcdde71..1126870 100644
--- a/cppcache/src/AutoDelete.hpp
+++ b/cppcache/src/AutoDelete.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 namespace apache {
 namespace geode {
@@ -40,7 +40,7 @@ class DeleteObject {
 
   ~DeleteObject() {
     if (m_cond) {
-      GF_SAFE_DELETE(m_p);
+      _GEODE_SAFE_DELETE(m_p);
     }
   }
 };
@@ -62,7 +62,7 @@ class DeleteArray {
 
   ~DeleteArray() {
     if (m_cond) {
-      GF_SAFE_DELETE_ARRAY(m_p);
+      _GEODE_SAFE_DELETE_ARRAY(m_p);
     }
   }
 };
diff --git a/cppcache/src/Cache.cpp b/cppcache/src/Cache.cpp
index 1e515a5..bd81b63 100644
--- a/cppcache/src/Cache.cpp
+++ b/cppcache/src/Cache.cpp
@@ -17,7 +17,7 @@
 
 #include <memory>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/FunctionService.hpp>
 #include <geode/PoolManager.hpp>
 #include <geode/DistributedSystem.hpp>
diff --git a/cppcache/src/CacheConfig.hpp b/cppcache/src/CacheConfig.hpp
index f374f64..78c142b 100644
--- a/cppcache/src/CacheConfig.hpp
+++ b/cppcache/src/CacheConfig.hpp
@@ -31,7 +31,7 @@
 #pragma warning(disable : 4786)
 #endif  // _MSC_VER > 1000
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <string>
 #include <map>
 #include "RegionConfig.hpp"
@@ -53,7 +53,7 @@ namespace client {
 
 typedef std::map<std::string, std::shared_ptr<RegionConfig>> RegionConfigMapT;
 
-class CPPCACHE_EXPORT CacheConfig {
+class _GEODE_EXPORT CacheConfig {
  public:
   CacheConfig(const char* xmlFileName);
 
diff --git a/cppcache/src/CacheImpl.cpp b/cppcache/src/CacheImpl.cpp
index fb2c1f1..56b1f76 100644
--- a/cppcache/src/CacheImpl.cpp
+++ b/cppcache/src/CacheImpl.cpp
@@ -291,7 +291,7 @@ void CacheImpl::close(bool keepalive) {
 
   if (m_evictionControllerPtr != nullptr) {
     m_evictionControllerPtr->stop();
-    GF_SAFE_DELETE(m_evictionControllerPtr);
+    _GEODE_SAFE_DELETE(m_evictionControllerPtr);
   }
 
   // Close CachePef Stats
@@ -306,13 +306,13 @@ void CacheImpl::close(bool keepalive) {
 
   // Close CachePef Stats
   if (m_cacheStats) {
-    GF_SAFE_DELETE(m_cacheStats);
+    _GEODE_SAFE_DELETE(m_cacheStats);
   }
 
   m_regions->unbind_all();
   LOGDEBUG("CacheImpl::close( ): destroyed regions.");
 
-  GF_SAFE_DELETE(m_tcrConnectionManager);
+  _GEODE_SAFE_DELETE(m_tcrConnectionManager);
   m_cacheTXManager = nullptr;
 
   m_expiryTaskManager->stopExpiryTaskManager();
diff --git a/cppcache/src/CacheImpl.hpp b/cppcache/src/CacheImpl.hpp
index cdc362f..c720c00 100644
--- a/cppcache/src/CacheImpl.hpp
+++ b/cppcache/src/CacheImpl.hpp
@@ -22,7 +22,7 @@
 
 #include <atomic>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <memory>
 
 #include <geode/Cache.hpp>
@@ -85,7 +85,7 @@ class SerializationRegistry;
  *
  */
 
-class CPPCACHE_EXPORT CacheImpl : private NonCopyable, private NonAssignable {
+class _GEODE_EXPORT CacheImpl : private NonCopyable, private NonAssignable {
   /**
    * @brief public methods
    */
diff --git a/cppcache/src/CachePerfStats.hpp b/cppcache/src/CachePerfStats.hpp
index 0ce1990..17a7170 100644
--- a/cppcache/src/CachePerfStats.hpp
+++ b/cppcache/src/CachePerfStats.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_CACHEPERFSTATS_H_
 #define GEODE_CACHEPERFSTATS_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "statistics/Statistics.hpp"
 #include "statistics/StatisticsFactory.hpp"
@@ -34,7 +34,7 @@ namespace client {
 using namespace apache::geode::statistics;
 
 /** hold statistics for cache.. */
-class CPPCACHE_EXPORT CachePerfStats {
+class _GEODE_EXPORT CachePerfStats {
  public:
   CachePerfStats(StatisticsFactory* factory) {
     auto statsType = factory->findType("CachePerfStats");
diff --git a/cppcache/src/CacheRegionHelper.hpp b/cppcache/src/CacheRegionHelper.hpp
index a101060..77cafad 100644
--- a/cppcache/src/CacheRegionHelper.hpp
+++ b/cppcache/src/CacheRegionHelper.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_CACHEREGIONHELPER_H_
 #define GEODE_CACHEREGIONHELPER_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cache.hpp>
 
 namespace apache {
@@ -30,7 +30,7 @@ namespace client {
 class CacheImpl;
 class ProxyCache;
 
-class CPPCACHE_EXPORT CacheRegionHelper {
+class _GEODE_EXPORT CacheRegionHelper {
   /**
    * CacheHelper
    *
diff --git a/cppcache/src/CacheXml.hpp b/cppcache/src/CacheXml.hpp
index 678a474..6265524 100644
--- a/cppcache/src/CacheXml.hpp
+++ b/cppcache/src/CacheXml.hpp
@@ -20,13 +20,13 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT CacheXml {
+class _GEODE_EXPORT CacheXml {
  public:
   /** The name of the <code>cache</code> element */
   const char* CACHE;
diff --git a/cppcache/src/CacheXmlCreation.hpp b/cppcache/src/CacheXmlCreation.hpp
index 754674c..fb9ab31 100644
--- a/cppcache/src/CacheXmlCreation.hpp
+++ b/cppcache/src/CacheXmlCreation.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include "RegionXmlCreation.hpp"
 #include "PoolXmlCreation.hpp"
@@ -37,7 +37,7 @@ class Cache;
  * @since 1.0
  */
 
-class CPPCACHE_EXPORT CacheXmlCreation {
+class _GEODE_EXPORT CacheXmlCreation {
  public:
   /**
    * Creates a new <code>CacheXmlCreation</code> with no root region
diff --git a/cppcache/src/CacheXmlParser.cpp b/cppcache/src/CacheXmlParser.cpp
index ce17882..52d0bb8 100644
--- a/cppcache/src/CacheXmlParser.cpp
+++ b/cppcache/src/CacheXmlParser.cpp
@@ -393,7 +393,7 @@ void CacheXmlParser::handleParserErrors(int res) {
  */
 CacheXmlParser* CacheXmlParser::parse(const char* cacheXml, Cache* cache) {
   CacheXmlParser* handler;
-  GF_NEW(handler, CacheXmlParser(cache));
+  _GEODE_NEW(handler, CacheXmlParser(cache));
   // use RAII to delete the handler object in case of exceptions
   DeleteObject<CacheXmlParser> delHandler(handler);
 
@@ -466,7 +466,7 @@ void CacheXmlParser::startCache(void* ctx, const xmlChar** attrs) {
       }
     }
   }
-  GF_NEW(m_cacheCreation, CacheXmlCreation());
+  _GEODE_NEW(m_cacheCreation, CacheXmlCreation());
 }
 
 void CacheXmlParser::startPdx(const xmlChar** atts) {
@@ -1695,7 +1695,7 @@ void CacheXmlParser::endPersistenceManager() {
   }
 }
 
-CacheXmlParser::~CacheXmlParser() { GF_SAFE_DELETE(m_cacheCreation); }
+CacheXmlParser::~CacheXmlParser() { _GEODE_SAFE_DELETE(m_cacheCreation); }
 
 void CacheXmlParser::setError(const std::string& err) { m_error = err; }
 
diff --git a/cppcache/src/CacheXmlParser.hpp b/cppcache/src/CacheXmlParser.hpp
index c0882c1..ff251df 100644
--- a/cppcache/src/CacheXmlParser.hpp
+++ b/cppcache/src/CacheXmlParser.hpp
@@ -53,7 +53,7 @@ typedef CacheWriter* (*LibraryCacheWriterFn)(const char* assemblyPath,
 typedef PersistenceManager* (*LibraryPersistenceManagerFn)(
     const char* assemblyPath, const char* factFuncName);
 
-class CPPCACHE_EXPORT CacheXmlParser : public CacheXml {
+class _GEODE_EXPORT CacheXmlParser : public CacheXml {
  private:
   std::stack<std::shared_ptr<void>> _stack;
   xmlSAXHandler m_saxHandler;
diff --git a/cppcache/src/CacheableBuiltins.cpp b/cppcache/src/CacheableBuiltins.cpp
index 256a856..b094018 100644
--- a/cppcache/src/CacheableBuiltins.cpp
+++ b/cppcache/src/CacheableBuiltins.cpp
@@ -14,11 +14,14 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
-#include <geode/CacheableBuiltins.hpp>
+
+#define __STDC_FORMAT_MACROS
+#include <inttypes.h>
 
 #include <ace/OS.h>
-#include <cstdarg>
+
+#include <geode/internal/geode_globals.hpp>
+#include <geode/CacheableBuiltins.hpp>
 
 namespace apache {
 namespace geode {
diff --git a/cppcache/src/CacheableObjectPartList.hpp b/cppcache/src/CacheableObjectPartList.hpp
index a79b91b..8cc86ea 100644
--- a/cppcache/src/CacheableObjectPartList.hpp
+++ b/cppcache/src/CacheableObjectPartList.hpp
@@ -22,7 +22,7 @@
 
 #include <vector>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/DataOutput.hpp>
 #include <geode/DataInput.hpp>
 #include <geode/Cacheable.hpp>
diff --git a/cppcache/src/CacheableToken.cpp b/cppcache/src/CacheableToken.cpp
index 0373580..9741eb6 100644
--- a/cppcache/src/CacheableToken.cpp
+++ b/cppcache/src/CacheableToken.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "CacheableToken.hpp"
 
diff --git a/cppcache/src/CacheableToken.hpp b/cppcache/src/CacheableToken.hpp
index b5572c6..9d380c6 100644
--- a/cppcache/src/CacheableToken.hpp
+++ b/cppcache/src/CacheableToken.hpp
@@ -20,18 +20,18 @@
 #ifndef GEODE_CACHEABLETOKEN_H_
 #define GEODE_CACHEABLETOKEN_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cacheable.hpp>
 
 namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT CacheableToken;
+class _GEODE_EXPORT CacheableToken;
 
 /** Implement a non-mutable int64_t wrapper that can serve as a distributable
  * key object for cacheing as well as being a 64 bit value. */
-class CPPCACHE_EXPORT CacheableToken : public Cacheable {
+class _GEODE_EXPORT CacheableToken : public Cacheable {
  private:
   enum TokenType { NOT_USED = 0, INVALID, DESTROYED, OVERFLOWED, TOMBSTONE };
 
@@ -84,7 +84,7 @@ class CPPCACHE_EXPORT CacheableToken : public Cacheable {
 
   virtual ~CacheableToken();
 
-  FRIEND_STD_SHARED_PTR(CacheableToken)
+  _GEODE_FRIEND_STD_SHARED_PTR(CacheableToken)
 
   inline bool isInvalid() { return m_value == INVALID; }
 
diff --git a/cppcache/src/ClientMetadata.hpp b/cppcache/src/ClientMetadata.hpp
index 66b2c71..9b3ec1b 100644
--- a/cppcache/src/ClientMetadata.hpp
+++ b/cppcache/src/ClientMetadata.hpp
@@ -47,7 +47,7 @@ typedef std::vector<std::shared_ptr<BucketServerLocation>>
 typedef std::vector<BucketServerLocationsType> BucketServerLocationsListType;
 typedef std::map<std::string, std::vector<int> > FixedMapType;
 
-class CPPCACHE_EXPORT ClientMetadata : public NonAssignable {
+class _GEODE_EXPORT ClientMetadata : public NonAssignable {
  private:
   void setPartitionNames();
   std::shared_ptr<CacheableHashSet> m_partitionNames;
diff --git a/cppcache/src/ClientProxyMembershipID.hpp b/cppcache/src/ClientProxyMembershipID.hpp
index a15d974..30675e0 100644
--- a/cppcache/src/ClientProxyMembershipID.hpp
+++ b/cppcache/src/ClientProxyMembershipID.hpp
@@ -24,7 +24,7 @@
 
 #include <ace/OS.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/DataOutput.hpp>
 #include <geode/internal/functional.hpp>
 
diff --git a/cppcache/src/ConcurrentEntriesMap.hpp b/cppcache/src/ConcurrentEntriesMap.hpp
index 773c79a..9704c3f 100644
--- a/cppcache/src/ConcurrentEntriesMap.hpp
+++ b/cppcache/src/ConcurrentEntriesMap.hpp
@@ -21,7 +21,7 @@
 #define GEODE_CONCURRENTENTRIESMAP_H_
 #include <atomic>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "EntriesMap.hpp"
 #include "MapSegment.hpp"
 
@@ -36,7 +36,7 @@ class RegionInternal;
 /**
  * @brief Concurrent entries map.
  */
-class CPPCACHE_EXPORT ConcurrentEntriesMap : public EntriesMap {
+class _GEODE_EXPORT ConcurrentEntriesMap : public EntriesMap {
  protected:
   ExpiryTaskManager* m_expiryTaskManager;
   uint8_t m_concurrency;
diff --git a/cppcache/src/Condition.hpp b/cppcache/src/Condition.hpp
index bb46f07..c0f4b00 100644
--- a/cppcache/src/Condition.hpp
+++ b/cppcache/src/Condition.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <ace/Condition_Recursive_Thread_Mutex.h>
 #include <ace/OS_NS_sys_time.h>
 
@@ -31,7 +31,7 @@ namespace client {
 /**
  * Condition wrapper when you want an absolute signal or timeout condition.
  */
-class CPPCACHE_EXPORT Condition {
+class _GEODE_EXPORT Condition {
  private:
   ACE_Condition<ACE_Recursive_Thread_Mutex> m_cond;
   bool m_signaled;
diff --git a/cppcache/src/ConnectCounter.hpp b/cppcache/src/ConnectCounter.hpp
index a0e11a7..80a4e2a 100644
--- a/cppcache/src/ConnectCounter.hpp
+++ b/cppcache/src/ConnectCounter.hpp
@@ -20,13 +20,13 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT ConnectCounter {
+class _GEODE_EXPORT ConnectCounter {
  public:
   ConnectCounter();
 
diff --git a/cppcache/src/Connector.hpp b/cppcache/src/Connector.hpp
index ec722d2..7b96122 100644
--- a/cppcache/src/Connector.hpp
+++ b/cppcache/src/Connector.hpp
@@ -22,7 +22,7 @@
 
 #include <chrono>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 
 namespace apache {
diff --git a/cppcache/src/CppCacheLibrary.hpp b/cppcache/src/CppCacheLibrary.hpp
index 7f1f1cd..771e376 100644
--- a/cppcache/src/CppCacheLibrary.hpp
+++ b/cppcache/src/CppCacheLibrary.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <string>
 
 namespace apache {
@@ -28,7 +28,7 @@ namespace geode {
 namespace client {
 
 // initialize GEMFIRE runtime if it has not already been initialized.
-class CPPCACHE_EXPORT CppCacheLibrary {
+class _GEODE_EXPORT CppCacheLibrary {
  public:
   // Call to this to trigger initialization.
   static void initLib(void);
diff --git a/cppcache/src/CqAttributesImpl.hpp b/cppcache/src/CqAttributesImpl.hpp
index 8e2c747..7ca4eba 100644
--- a/cppcache/src/CqAttributesImpl.hpp
+++ b/cppcache/src/CqAttributesImpl.hpp
@@ -47,7 +47,7 @@ namespace client {
  *
  * For compatibility rules and default values, see {@link CqAttributesFactory}.
  */
-class CPPCACHE_EXPORT CqAttributesImpl : public CqAttributes {
+class _GEODE_EXPORT CqAttributesImpl : public CqAttributes {
  public:
   listener_container_type getCqListeners() override;
 
diff --git a/cppcache/src/CqAttributesMutatorImpl.hpp b/cppcache/src/CqAttributesMutatorImpl.hpp
index 639491a..f2a994c 100644
--- a/cppcache/src/CqAttributesMutatorImpl.hpp
+++ b/cppcache/src/CqAttributesMutatorImpl.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CqAttributesMutator.hpp>
 #include <geode/CqAttributes.hpp>
 
@@ -41,7 +41,7 @@ namespace client {
  * of certain CQ attributes after the CQ has been created.
  *
  */
-class CPPCACHE_EXPORT CqAttributesMutatorImpl : public CqAttributesMutator {
+class _GEODE_EXPORT CqAttributesMutatorImpl : public CqAttributesMutator {
  public:
   CqAttributesMutatorImpl(const std::shared_ptr<CqAttributes>& impl);
 
diff --git a/cppcache/src/CqEventImpl.hpp b/cppcache/src/CqEventImpl.hpp
index ab18fcd..38e6f5a 100644
--- a/cppcache/src/CqEventImpl.hpp
+++ b/cppcache/src/CqEventImpl.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CqEvent.hpp>
 #include <geode/CqOperation.hpp>
 #include <geode/CqQuery.hpp>
diff --git a/cppcache/src/CqQueryImpl.hpp b/cppcache/src/CqQueryImpl.hpp
index 5506310..38a41fd 100644
--- a/cppcache/src/CqQueryImpl.hpp
+++ b/cppcache/src/CqQueryImpl.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_CQQUERYIMPL_H_
 #define GEODE_CQQUERYIMPL_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include <geode/CqResults.hpp>
 #include <geode/CqQuery.hpp>
@@ -274,7 +274,7 @@ class CqQueryImpl : public CqQuery,
   ThinClientBaseDM* m_tccdm;
   ProxyCache* m_proxyCache;
 
-  FRIEND_STD_SHARED_PTR(CqQueryImpl)
+  _GEODE_FRIEND_STD_SHARED_PTR(CqQueryImpl)
 };
 
 }  // namespace client
diff --git a/cppcache/src/CqQueryVsdStats.cpp b/cppcache/src/CqQueryVsdStats.cpp
index 473165c..f5cee63 100644
--- a/cppcache/src/CqQueryVsdStats.cpp
+++ b/cppcache/src/CqQueryVsdStats.cpp
@@ -25,7 +25,7 @@ const char* cqStatsDesc = "Statistics for this cq query";
 #include <ace/Thread_Mutex.h>
 #include <ace/Singleton.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "CqQueryVsdStats.hpp"
 
diff --git a/cppcache/src/CqQueryVsdStats.hpp b/cppcache/src/CqQueryVsdStats.hpp
index 2fbd216..3f54d51 100644
--- a/cppcache/src/CqQueryVsdStats.hpp
+++ b/cppcache/src/CqQueryVsdStats.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CqStatistics.hpp>
 
 #include "statistics/Statistics.hpp"
@@ -38,7 +38,7 @@ using statistics::StatisticsType;
 using statistics::Statistics;
 using util::concurrent::spinlock_mutex;
 
-class CPPCACHE_EXPORT CqQueryVsdStats : public CqStatistics {
+class _GEODE_EXPORT CqQueryVsdStats : public CqStatistics {
  public:
   /** hold statistics for a cq. */
   CqQueryVsdStats(statistics::StatisticsFactory* factory, const std::string& cqqueryName);
diff --git a/cppcache/src/CqService.cpp b/cppcache/src/CqService.cpp
index 3cff7d9..6163856 100644
--- a/cppcache/src/CqService.cpp
+++ b/cppcache/src/CqService.cpp
@@ -404,7 +404,7 @@ bool CqService::isCqExists(const std::string& cqName) {
 void CqService::receiveNotification(TcrMessage* msg) {
   invokeCqListeners(msg->getCqs(), msg->getMessageTypeForCq(), msg->getKey(),
                     msg->getValue(), msg->getDeltaBytes(), msg->getEventId());
-  GF_SAFE_DELETE(msg);
+  _GEODE_SAFE_DELETE(msg);
   m_notificationSema.release();
 }
 
diff --git a/cppcache/src/CqService.hpp b/cppcache/src/CqService.hpp
index 2c18da6..54bf886 100644
--- a/cppcache/src/CqService.hpp
+++ b/cppcache/src/CqService.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "TcrMessage.hpp"
 #include "Queue.hpp"
 #include <ace/ACE.h>
@@ -58,10 +58,9 @@ namespace client {
  *
  */
 
-class CPPCACHE_EXPORT CqService
-    : private NonCopyable,
-      private NonAssignable,
-      public std::enable_shared_from_this<CqService> {
+class _GEODE_EXPORT CqService : private NonCopyable,
+                                private NonAssignable,
+                                public std::enable_shared_from_this<CqService> {
  private:
   ThinClientBaseDM* m_tccdm;
   statistics::StatisticsFactory* m_statisticsFactory;
diff --git a/cppcache/src/CqServiceVsdStats.cpp b/cppcache/src/CqServiceVsdStats.cpp
index 2700f84..ea36585 100644
--- a/cppcache/src/CqServiceVsdStats.cpp
+++ b/cppcache/src/CqServiceVsdStats.cpp
@@ -18,7 +18,7 @@
 #include <ace/Thread_Mutex.h>
 #include <ace/Singleton.h>
 #include <mutex>
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "CqServiceVsdStats.hpp"
 #include "statistics/StatisticsFactory.hpp"
diff --git a/cppcache/src/CqServiceVsdStats.hpp b/cppcache/src/CqServiceVsdStats.hpp
index 92080b1..3f27ea1 100644
--- a/cppcache/src/CqServiceVsdStats.hpp
+++ b/cppcache/src/CqServiceVsdStats.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CqServiceStatistics.hpp>
 
 #include "statistics/Statistics.hpp"
@@ -38,7 +38,7 @@ using statistics::StatisticsType;
 using statistics::Statistics;
 using util::concurrent::spinlock_mutex;
 
-class CPPCACHE_EXPORT CqServiceVsdStats : public CqServiceStatistics {
+class _GEODE_EXPORT CqServiceVsdStats : public CqServiceStatistics {
  public:
   /** hold statistics for a cq. */
   CqServiceVsdStats(statistics::StatisticsFactory* factory,
diff --git a/cppcache/src/DSMemberForVersionStamp.hpp b/cppcache/src/DSMemberForVersionStamp.hpp
index 99d64cc..f079b8f 100644
--- a/cppcache/src/DSMemberForVersionStamp.hpp
+++ b/cppcache/src/DSMemberForVersionStamp.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CacheableKey.hpp>
 #include <string>
 
diff --git a/cppcache/src/DataInput.cpp b/cppcache/src/DataInput.cpp
index 63e4eeb..e6ee8f4 100644
--- a/cppcache/src/DataInput.cpp
+++ b/cppcache/src/DataInput.cpp
@@ -44,7 +44,7 @@ void DataInput::readJavaModifiedUtf8(
   readJavaModifiedUtf8(utf16);
   value = to_utf8(utf16);
 }
-template CPPCACHE_EXPORT void DataInput::readJavaModifiedUtf8(std::string&);
+template _GEODE_EXPORT void DataInput::readJavaModifiedUtf8(std::string&);
 
 template <class _Traits, class _Allocator>
 void DataInput::readJavaModifiedUtf8(
@@ -54,7 +54,7 @@ void DataInput::readJavaModifiedUtf8(
   readJavaModifiedUtf8(utf16);
   value = to_ucs4(utf16);
 }
-template CPPCACHE_EXPORT void DataInput::readJavaModifiedUtf8(std::u32string&);
+template _GEODE_EXPORT void DataInput::readJavaModifiedUtf8(std::u32string&);
 
 template <class _Traits, class _Allocator>
 void DataInput::readUtf16Huge(
@@ -64,7 +64,7 @@ void DataInput::readUtf16Huge(
   readUtf16Huge(utf16);
   value = to_utf8(utf16);
 }
-template CPPCACHE_EXPORT void DataInput::readUtf16Huge(std::string&);
+template _GEODE_EXPORT void DataInput::readUtf16Huge(std::string&);
 
 template <class _Traits, class _Allocator>
 void DataInput::readUtf16Huge(
@@ -74,7 +74,7 @@ void DataInput::readUtf16Huge(
   readUtf16Huge(utf16);
   value = to_ucs4(utf16);
 }
-template CPPCACHE_EXPORT void DataInput::readUtf16Huge(std::u32string&);
+template _GEODE_EXPORT void DataInput::readUtf16Huge(std::u32string&);
 
 }  // namespace client
 }  // namespace geode
diff --git a/cppcache/src/DataOutput.cpp b/cppcache/src/DataOutput.cpp
index b4a54b1..3e0fde5 100644
--- a/cppcache/src/DataOutput.cpp
+++ b/cppcache/src/DataOutput.cpp
@@ -156,7 +156,7 @@ void DataOutput::writeJavaModifiedUtf8(
     writeJavaModifiedUtf8(to_utf16(value));
   }
 }
-template CPPCACHE_EXPORT void DataOutput::writeJavaModifiedUtf8(
+template _GEODE_EXPORT void DataOutput::writeJavaModifiedUtf8(
     const std::string&);
 
 template <class _Traits, class _Allocator>
@@ -172,7 +172,7 @@ void DataOutput::writeJavaModifiedUtf8(
     writeJavaModifiedUtf8(to_utf16(value));
   }
 }
-template CPPCACHE_EXPORT void DataOutput::writeJavaModifiedUtf8(
+template _GEODE_EXPORT void DataOutput::writeJavaModifiedUtf8(
     const std::u32string&);
 
 void DataOutput::writeJavaModifiedUtf8(const char32_t* data, size_t len) {
@@ -199,7 +199,7 @@ void DataOutput::writeUtf16Huge(
     writeUtf16Huge(to_utf16(value));
   }
 }
-template CPPCACHE_EXPORT void DataOutput::writeUtf16Huge(const std::string&);
+template _GEODE_EXPORT void DataOutput::writeUtf16Huge(const std::string&);
 
 template <class _Traits, class _Allocator>
 void DataOutput::writeUtf16Huge(
@@ -211,7 +211,7 @@ void DataOutput::writeUtf16Huge(
     writeUtf16Huge(to_utf16(value));
   }
 }
-template CPPCACHE_EXPORT void DataOutput::writeUtf16Huge(const std::u32string&);
+template _GEODE_EXPORT void DataOutput::writeUtf16Huge(const std::u32string&);
 
 void DataOutput::writeUtf16Huge(const char32_t* data, size_t len) {
   // TODO string optimize from UCS-4 to UTF-16
@@ -230,7 +230,7 @@ void DataOutput::writeUtf16(
     writeUtf16(to_utf16(value));
   }
 }
-template CPPCACHE_EXPORT void DataOutput::writeUtf16(const std::string&);
+template _GEODE_EXPORT void DataOutput::writeUtf16(const std::string&);
 
 template <class _Traits, class _Allocator>
 void DataOutput::writeUtf16(
@@ -240,7 +240,7 @@ void DataOutput::writeUtf16(
     writeUtf16(to_utf16(value));
   }
 }
-template CPPCACHE_EXPORT void DataOutput::writeUtf16(const std::u32string&);
+template _GEODE_EXPORT void DataOutput::writeUtf16(const std::u32string&);
 
 void DataOutput::writeUtf16(const char32_t* data, size_t len) {
   // TODO string optimize from UCS-4 to UTF-16
diff --git a/cppcache/src/DiskStoreId.cpp b/cppcache/src/DiskStoreId.cpp
index cf5b2e7..1210f46 100644
--- a/cppcache/src/DiskStoreId.cpp
+++ b/cppcache/src/DiskStoreId.cpp
@@ -15,9 +15,13 @@
  * limitations under the License.
  */
 
-#include "DiskStoreId.hpp"
+#define __STDC_FORMAT_MACROS
+#include <inttypes.h>
+
 #include <ace/OS.h>
 
+#include "DiskStoreId.hpp"
+
 namespace apache {
 namespace geode {
 namespace client {
diff --git a/cppcache/src/DiskStoreId.hpp b/cppcache/src/DiskStoreId.hpp
index fe384b0..1b9b3cc 100644
--- a/cppcache/src/DiskStoreId.hpp
+++ b/cppcache/src/DiskStoreId.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_DISKSTOREID_H_
 #define GEODE_DISKSTOREID_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/DataInput.hpp>
 #include "DSMemberForVersionStamp.hpp"
 #include "GeodeTypeIdsImpl.hpp"
diff --git a/cppcache/src/DistributedSystem.cpp b/cppcache/src/DistributedSystem.cpp
index de8cf65..3851fec 100644
--- a/cppcache/src/DistributedSystem.cpp
+++ b/cppcache/src/DistributedSystem.cpp
@@ -19,7 +19,7 @@
 #include <ace/Guard_T.h>
 #include <ace/Recursive_Thread_Mutex.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/DistributedSystem.hpp>
 #include <geode/CacheFactory.hpp>
 #include <geode/SystemProperties.hpp>
diff --git a/cppcache/src/DistributedSystemImpl.hpp b/cppcache/src/DistributedSystemImpl.hpp
index deb2e1d..254dce2 100644
--- a/cppcache/src/DistributedSystemImpl.hpp
+++ b/cppcache/src/DistributedSystemImpl.hpp
@@ -24,7 +24,7 @@
  * @file
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <memory>
 #include "ace/Recursive_Thread_Mutex.h"
 #include "ace/Guard_T.h"
@@ -51,7 +51,7 @@ class SystemProperties;
 
 class DistributedSystemImpl;
 
-class CPPCACHE_EXPORT DistributedSystemImpl {
+class _GEODE_EXPORT DistributedSystemImpl {
   /**
    * @brief public methods
    */
diff --git a/cppcache/src/EntriesMap.hpp b/cppcache/src/EntriesMap.hpp
index 69958c5..bafa090 100644
--- a/cppcache/src/EntriesMap.hpp
+++ b/cppcache/src/EntriesMap.hpp
@@ -24,7 +24,7 @@
 
 #include <memory>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "MapEntry.hpp"
 #include <geode/CacheableKey.hpp>
 #include "MapSegment.hpp"
@@ -40,7 +40,7 @@ namespace client {
 /**
  * @brief Concurrent entries map. Not designed for subclassing...
  */
-class CPPCACHE_EXPORT EntriesMap {
+class _GEODE_EXPORT EntriesMap {
  public:
   EntriesMap(std::unique_ptr<EntryFactory> entryFactory) : m_entryFactory(std::move(entryFactory)) {}
   virtual ~EntriesMap() {}
diff --git a/cppcache/src/EntriesMapFactory.hpp b/cppcache/src/EntriesMapFactory.hpp
index c6199d6..56bca31 100644
--- a/cppcache/src/EntriesMapFactory.hpp
+++ b/cppcache/src/EntriesMapFactory.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "EntriesMap.hpp"
 #include <geode/RegionAttributes.hpp>
 
@@ -28,7 +28,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT EntriesMapFactory {
+class _GEODE_EXPORT EntriesMapFactory {
  public:
   /** @brief used internally by Region implementation to create the appropriate
    * type of entries map.
diff --git a/cppcache/src/EntryExpiryHandler.hpp b/cppcache/src/EntryExpiryHandler.hpp
index 33dc800..d7a1f5b 100644
--- a/cppcache/src/EntryExpiryHandler.hpp
+++ b/cppcache/src/EntryExpiryHandler.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cache.hpp>
 #include <geode/Region.hpp>
 #include <geode/ExpirationAction.hpp>
@@ -43,7 +43,7 @@ namespace client {
  * TODO: TODO: cleanup region entry nodes and handlers from expiry task
  * manager when region is destroyed
  */
-class CPPCACHE_EXPORT EntryExpiryHandler : public ACE_Event_Handler {
+class _GEODE_EXPORT EntryExpiryHandler : public ACE_Event_Handler {
  public:
   /**
    * Constructor
diff --git a/cppcache/src/EnumInfo.hpp b/cppcache/src/EnumInfo.hpp
index 0c09aad..2c65eef 100644
--- a/cppcache/src/EnumInfo.hpp
+++ b/cppcache/src/EnumInfo.hpp
@@ -28,7 +28,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT EnumInfo : public CacheableKey {
+class _GEODE_EXPORT EnumInfo : public CacheableKey {
  private:
   std::shared_ptr<CacheableString> m_enumClassName;
   std::shared_ptr<CacheableString> m_enumName;
diff --git a/cppcache/include/geode/geode_base.hpp b/cppcache/src/ErrType.hpp
similarity index 51%
rename from cppcache/include/geode/geode_base.hpp
rename to cppcache/src/ErrType.hpp
index 6dde29d..bf8520d 100644
--- a/cppcache/include/geode/geode_base.hpp
+++ b/cppcache/src/ErrType.hpp
@@ -17,160 +17,8 @@
 
 #pragma once
 
-#ifndef GEODE_BASE_H_
-#define GEODE_BASE_H_
-
-#if defined(_WIN32)
-/** Library Export */
-#define LIBEXP __declspec(dllexport)
-/** Library Implementation */
-#define LIBIMP __declspec(dllimport)
-/** Library Call */
-#define LIBCALL __stdcall
-/** Library Export a type */
-#define LIBEXPORT(type) LIBEXP type LIBCALL
-#else
-/** Library Export */
-#define LIBEXP
-/** Library Implementation */
-#define LIBIMP extern
-/** Library Call */
-#define LIBCALL /**/
-/** Library Export a type */
-#define LIBEXPORT(type) type
-#endif
-
-/** Defines a Geode C extern */
-#ifdef BUILD_GEMFIRE
-#define GFCEXTERN(type) LIBEXP type LIBCALL
-#else
-#define GFCEXTERN(type) LIBIMP type LIBCALL
-#endif /* BUILD_GEMFIRE    */
-
-/** Defines a Geode CPPCACHE export */
-#if defined(_WIN32)
-#ifdef BUILD_CPPCACHE
-#define CPPCACHE_EXPORT LIBEXP
-#else
-#define CPPCACHE_EXPORT LIBIMP
-#endif
-#else
-#define CPPCACHE_EXPORT
-#endif /* BUILD_CPPCACHE */
-
-/** Define GF_TEMPLATE_EXPORT */
-#if defined(_WIN32)
-#ifdef BUILD_CPPCACHE
-#define GF_TEMPLATE_EXPORT __declspec(dllexport)
-#else
-#define GF_TEMPLATE_EXPORT __declspec(dllimport)
-#endif
-#else
-#define GF_TEMPLATE_EXPORT
-#endif
-
-#if defined(_MSC_VER)
-/* Windows does not have inttypes.h */
-/* 32 bit Windows only, for now */
-#if !defined PRId8
-#define PRId8 "d"
-#endif
-#if !defined PRIi8
-#define PRIi8 "i"
-#endif
-#if !defined PRIo8
-#define PRIo8 "o"
-#endif
-#if !defined PRIu8
-#define PRIu8 "u"
-#endif
-#if !defined PRIx8
-#define PRIx8 "x"
-#endif
-#if !defined PRIX8
-#define PRIX8 "X"
-#endif
-#if !defined PRId16
-#define PRId16 "d"
-#endif
-#if !defined PRIi16
-#define PRIi16 "i"
-#endif
-#if !defined PRIo16
-#define PRIo16 "o"
-#endif
-#if !defined PRIu16
-#define PRIu16 "u"
-#endif
-#if !defined PRIx16
-#define PRIx16 "x"
-#endif
-#if !defined PRIX16
-#define PRIX16 "X"
-#endif
-#if !defined PRId32
-#define PRId32 "d"
-#endif
-#if !defined PRIi32
-#define PRIi32 "i"
-#endif
-#if !defined PRIo32
-#define PRIo32 "o"
-#endif
-#if !defined PRIu32
-#define PRIu32 "u"
-#endif
-#if !defined PRIx32
-#define PRIx32 "x"
-#endif
-#if !defined PRIX32
-#define PRIX32 "X"
-#endif
-#if !defined PRId64
-#define PRId64 "lld"
-#endif
-#if !defined PRIi64
-#define PRIi64 "lli"
-#endif
-#if !defined PRIo64
-#define PRIo64 "llo"
-#endif
-#if !defined PRIu64
-#define PRIu64 "llu"
-#endif
-#if !defined PRIx64
-#define PRIx64 "llx"
-#endif
-#if !defined PRIX64
-#define PRIX64 "llX"
-#endif
-/* end inttypes.h */
-
-#else
-/* Unix, including both Sparc Solaris and Linux */
-#define __STDC_FORMAT_MACROS
-
-#endif /* _WIN32*/
-
-/**@namespace geode This namespace contains all the Geode
- * C++ API classes, enumerations and globals.
- */
-
-/**@namespace geode_statistics This namespace contains all the Geode
- * C++ statistics API classes.
- */
-
-/**@namespace apache::geode::client::TypeHelper This namespace contains type
- * traits helper
- * structs/classes to determine type information at compile time
- * using typename. Useful for templates in particular.
- */
-
-/**
- * @file
- *
- *  Definitions of types and functions supported in the Geode C++ interface
- */
+#ifndef GEODE_ERRTYPE_H_
+#define GEODE_ERRTYPE_H_
 
 /**
  * @enum GfErrType
@@ -248,10 +96,10 @@ typedef enum {
   GF_REMOTE_QUERY_EXCEPTION = 130,   /** Query exception on java cache server */
   GF_CACHE_LISTENER_EXCEPTION = 131, /** Exception in CacheListener */
   GF_ALL_CONNECTIONS_IN_USE_EXCEPTION = 132, /** ALl connections in use*/
-  /**
-   * local entry was updated while a remote modification operation was
-   * in progress
-   */
+                                             /**
+                                              * local entry was updated while a remote modification operation was
+                                              * in progress
+                                              */
   GF_CACHE_ENTRY_UPDATED = 133,
   GF_CACHE_LOCATOR_EXCEPTION = 134, /** Exception in Locator */
   GF_INVALID_DELTA = 135,
@@ -264,73 +112,4 @@ typedef enum {
   GF_EUNDEF = 999 /**< unknown exception */
 } GfErrType;
 
-#include <new>
-
-/** Allocates x and throws OutOfMemoryException if it fails */
-#define GF_NEW(v, stmt)                                                 \
-  {                                                                     \
-    try {                                                               \
-      v = new stmt;                                                     \
-    } catch (const std::bad_alloc &) {                                  \
-      throw apache::geode::client::OutOfMemoryException(                \
-          "Out of Memory while executing \"" #v " = new " #stmt ";\""); \
-    }                                                                   \
-  }
-
-/** Deletes x only if it exists */
-#define GF_SAFE_DELETE(x) \
-  {                       \
-    delete x;             \
-    x = nullptr;          \
-  }
-
-/** Deletes array x only if it exists */
-#define GF_SAFE_DELETE_ARRAY(x) \
-  {                             \
-    delete[] x;                 \
-    x = nullptr;                \
-  }
-
-// TODO shared_ptr - Consider making con/destructors public.
-/*
- * Allows std::shared_ptr to access protected constructors and destructors.
- */
-#if defined(__clang__)
-#define FRIEND_STD_SHARED_PTR(_T)                                      \
-  friend std::__libcpp_compressed_pair_imp<std::allocator<_T>, _T, 1>; \
-  friend std::__shared_ptr_emplace<_T, std::allocator<_T> >;           \
-  friend std::default_delete<_T>;
-#elif defined(__GNUC__) || defined(__SUNPRO_CC)
-#define FRIEND_STD_SHARED_PTR(_T) friend __gnu_cxx::new_allocator<_T>;
-#elif defined(_MSC_VER)
-#if defined(_MANAGED)
-#define FRIEND_STD_SHARED_PTR(_T) \
-  friend std::_Ref_count_obj<_T>; \
-  friend std::_Ref_count<_T>;     \
-  friend std::_Ptr_base<_T>;      \
-  friend std::default_delete<_T>; \
-  friend std::shared_ptr<_T>;
-#else
-#define FRIEND_STD_SHARED_PTR(_T) friend std::_Ref_count_obj<_T>;
-#endif
-#else
-#define FRIEND_STD_SHARED_PTR(_T)
-#endif
-
-#include <chrono>
-#include <string>
-
-namespace apache {
-namespace geode {
-namespace client {
-
-constexpr static std::chrono::milliseconds DEFAULT_QUERY_RESPONSE_TIMEOUT =
-    std::chrono::seconds{15};
-
-static const std::string EMPTY_STRING{};
-
-}  // namespace client
-}  // namespace geode
-}  // namespace apache
-
-#endif  // GEODE_BASE_H_
+#endif  // GEODE_ERRTYPE_H_
diff --git a/cppcache/src/EventId.hpp b/cppcache/src/EventId.hpp
index cd13aca..76446bf 100644
--- a/cppcache/src/EventId.hpp
+++ b/cppcache/src/EventId.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_EVENTID_H_
 #define GEODE_EVENTID_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cacheable.hpp>
 #include "GeodeTypeIdsImpl.hpp"
 #include <geode/DataOutput.hpp>
@@ -38,7 +38,7 @@ namespace client {
  * EventID "token" with a Distributed Member ID, Thread ID and per-thread
  * Sequence ID
  */
-class CPPCACHE_EXPORT EventId : public Cacheable {
+class _GEODE_EXPORT EventId : public Cacheable {
  private:
   char m_eidMem[512];
   int32_t m_eidMemLen;
diff --git a/cppcache/src/EventIdMap.hpp b/cppcache/src/EventIdMap.hpp
index 6a1525a..b37e1ef 100644
--- a/cppcache/src/EventIdMap.hpp
+++ b/cppcache/src/EventIdMap.hpp
@@ -57,7 +57,7 @@ typedef ACE_Guard<ACE_Recursive_Thread_Mutex> MapGuard;
  * provides the operations for duplicate checking and
  * expiry of idle event IDs from notifications.
  */
-class CPPCACHE_EXPORT EventIdMap {
+class _GEODE_EXPORT EventIdMap {
  private:
   typedef std::unordered_map<std::shared_ptr<EventSource>,
                              std::shared_ptr<EventSequence>,
@@ -132,7 +132,7 @@ class CPPCACHE_EXPORT EventIdMap {
  * EventSequence is the combination of SequenceNum from EventId, a timestamp and
  * a flag indicating whether or not it is ACKed
  */
-class CPPCACHE_EXPORT EventSequence {
+class _GEODE_EXPORT EventSequence {
   int64_t m_seqNum;
   bool m_acked;
   ACE_Time_Value m_deadline;  // current time plus the expiration delay (age)
diff --git a/cppcache/src/EventSource.hpp b/cppcache/src/EventSource.hpp
index 1fdca79..44f3b61 100644
--- a/cppcache/src/EventSource.hpp
+++ b/cppcache/src/EventSource.hpp
@@ -31,7 +31,7 @@ namespace client {
  *
  * EventSource is the combination of MembershipId and ThreadId from the EventId
  */
-class CPPCACHE_EXPORT EventSource {
+class _GEODE_EXPORT EventSource {
   char *m_srcId;
   int32_t m_srcIdLen;
   int64_t m_thrId;
diff --git a/cppcache/src/EvictionController.cpp b/cppcache/src/EvictionController.cpp
index f0a9b3d..2590e70 100644
--- a/cppcache/src/EvictionController.cpp
+++ b/cppcache/src/EvictionController.cpp
@@ -42,7 +42,9 @@ EvictionController::EvictionController(size_t maxHeapSize,
   //  DistributedSystem::getSystemProperties()->gfMessageSize();
 }
 
-EvictionController::~EvictionController() { GF_SAFE_DELETE(evictionThreadPtr); }
+EvictionController::~EvictionController() {
+  _GEODE_SAFE_DELETE(evictionThreadPtr);
+}
 
 void EvictionController::updateRegionHeapInfo(int64_t info) {
   // LOGINFO("updateRegionHeapInfo is %d", info);
diff --git a/cppcache/src/EvictionController.hpp b/cppcache/src/EvictionController.hpp
index e515a69..550d810 100644
--- a/cppcache/src/EvictionController.hpp
+++ b/cppcache/src/EvictionController.hpp
@@ -69,7 +69,7 @@ class EvictionController;
 class EvictionThread;
 class CacheImpl;
 
-class CPPCACHE_EXPORT EvictionController : public ACE_Task_Base {
+class _GEODE_EXPORT EvictionController : public ACE_Task_Base {
  public:
   EvictionController(size_t maxHeapSize, int32_t heapSizeDelta,
                      CacheImpl* cache);
diff --git a/cppcache/src/EvictionThread.hpp b/cppcache/src/EvictionThread.hpp
index 2641eec..c2735d7 100644
--- a/cppcache/src/EvictionThread.hpp
+++ b/cppcache/src/EvictionThread.hpp
@@ -37,7 +37,7 @@ namespace client {
 class EvictionController;
 typedef IntQueue<int64_t> HeapSizeInfoQueue;
 
-class CPPCACHE_EXPORT EvictionThread : public ACE_Task_Base {
+class _GEODE_EXPORT EvictionThread : public ACE_Task_Base {
  public:
   EvictionThread(EvictionController* parent);
 
diff --git a/cppcache/src/ExceptionTypes.cpp b/cppcache/src/ExceptionTypes.cpp
index b514d1f..7e2b52b 100644
--- a/cppcache/src/ExceptionTypes.cpp
+++ b/cppcache/src/ExceptionTypes.cpp
@@ -24,6 +24,7 @@
 #include "TXState.hpp"
 #include "TSSTXStateWrapper.hpp"
 #include "util/Log.hpp"
+#include "ErrType.hpp"
 
 namespace apache {
 namespace geode {
diff --git a/cppcache/src/ExecutionImpl.cpp b/cppcache/src/ExecutionImpl.cpp
index 983c8c8..2dfd5fb 100644
--- a/cppcache/src/ExecutionImpl.cpp
+++ b/cppcache/src/ExecutionImpl.cpp
@@ -17,7 +17,7 @@
 
 #include <sstream>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/DefaultResultCollector.hpp>
 
diff --git a/cppcache/src/ExecutionImpl.hpp b/cppcache/src/ExecutionImpl.hpp
index 82cfb3b..1310529 100644
--- a/cppcache/src/ExecutionImpl.hpp
+++ b/cppcache/src/ExecutionImpl.hpp
@@ -126,7 +126,7 @@ class ExecutionImpl : public Execution {
   GfErrType getFuncAttributes(const std::string& func,
                               std::vector<int8_t>** attr);
 
-  FRIEND_STD_SHARED_PTR(ExecutionImpl)
+  _GEODE_FRIEND_STD_SHARED_PTR(ExecutionImpl)
 };
 }  // namespace client
 }  // namespace geode
diff --git a/cppcache/src/ExpMapEntry.hpp b/cppcache/src/ExpMapEntry.hpp
index 82c6091..4332da0 100644
--- a/cppcache/src/ExpMapEntry.hpp
+++ b/cppcache/src/ExpMapEntry.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_EXPMAPENTRY_H_
 #define GEODE_EXPMAPENTRY_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "MapEntry.hpp"
 #include "VersionStamp.hpp"
 
@@ -31,8 +31,8 @@ namespace client {
  * @brief Hold region mapped entry value.
  * This subclass adds expiration times.
  */
-class CPPCACHE_EXPORT ExpMapEntry : public MapEntryImpl,
-                                    public ExpEntryProperties {
+class _GEODE_EXPORT ExpMapEntry : public MapEntryImpl,
+                                  public ExpEntryProperties {
  public:
   virtual ~ExpMapEntry() {}
 
@@ -59,8 +59,8 @@ class CPPCACHE_EXPORT ExpMapEntry : public MapEntryImpl,
   ExpMapEntry& operator=(const ExpMapEntry&);
 };
 
-class CPPCACHE_EXPORT VersionedExpMapEntry : public ExpMapEntry,
-                                             public VersionStamp {
+class _GEODE_EXPORT VersionedExpMapEntry : public ExpMapEntry,
+                                           public VersionStamp {
  public:
   virtual ~VersionedExpMapEntry() {}
 
@@ -79,7 +79,7 @@ class CPPCACHE_EXPORT VersionedExpMapEntry : public ExpMapEntry,
   VersionedExpMapEntry& operator=(const VersionedExpMapEntry&);
 };
 
-class CPPCACHE_EXPORT ExpEntryFactory : public EntryFactory {
+class _GEODE_EXPORT ExpEntryFactory : public EntryFactory {
  public:
   using EntryFactory::EntryFactory;
 
diff --git a/cppcache/src/ExpiryHandler_T.hpp b/cppcache/src/ExpiryHandler_T.hpp
index 8efed59..a17a989 100644
--- a/cppcache/src/ExpiryHandler_T.hpp
+++ b/cppcache/src/ExpiryHandler_T.hpp
@@ -37,7 +37,7 @@ namespace client {
  * since GF_Timer_Heap_ImmediateReset_T also deletes handlers that expire
  */
 template <class T>
-class CPPCACHE_EXPORT ExpiryHandler_T : public ACE_Event_Handler {
+class _GEODE_EXPORT ExpiryHandler_T : public ACE_Event_Handler {
  public:
   /// Handle timeout events.
   typedef int (T::*TO_HANDLER)(const ACE_Time_Value &, const void *);
diff --git a/cppcache/src/ExpiryTaskManager.hpp b/cppcache/src/ExpiryTaskManager.hpp
index 84cf4f5..52e8d0a 100644
--- a/cppcache/src/ExpiryTaskManager.hpp
+++ b/cppcache/src/ExpiryTaskManager.hpp
@@ -26,7 +26,7 @@
 #include <ace/Task.h>
 #include <ace/Timer_Heap.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/internal/chrono/duration.hpp>
 
 #include "ReadWriteLock.hpp"
@@ -48,7 +48,7 @@ using namespace apache::geode::internal::chrono::duration;
  * This class starts a reactor's event loop for taking care of expiry
  * tasks. The scheduling of event also happens through this manager.
  */
-class CPPCACHE_EXPORT ExpiryTaskManager : public ACE_Task_Base {
+class _GEODE_EXPORT ExpiryTaskManager : public ACE_Task_Base {
  public:
   typedef long id_type;
   /**
diff --git a/cppcache/src/FairQueue.hpp b/cppcache/src/FairQueue.hpp
index aedd688..98e6c51 100644
--- a/cppcache/src/FairQueue.hpp
+++ b/cppcache/src/FairQueue.hpp
@@ -163,7 +163,7 @@ class FairQueue {
         if (mp && excludeList) {
           if (exclude(mp, excludeList)) {
             mp->close();
-            GF_SAFE_DELETE(mp);
+            _GEODE_SAFE_DELETE(mp);
             deleteAction();
           }
         }
diff --git a/cppcache/src/FarSideEntryOp.hpp b/cppcache/src/FarSideEntryOp.hpp
index 288065c..6d5211d 100644
--- a/cppcache/src/FarSideEntryOp.hpp
+++ b/cppcache/src/FarSideEntryOp.hpp
@@ -26,7 +26,7 @@
  *      Author: ankurs
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cacheable.hpp>
 #include <geode/DataOutput.hpp>
 #include <geode/DataInput.hpp>
diff --git a/cppcache/src/FunctionServiceImpl.hpp b/cppcache/src/FunctionServiceImpl.hpp
index de8d370..28983e1 100644
--- a/cppcache/src/FunctionServiceImpl.hpp
+++ b/cppcache/src/FunctionServiceImpl.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "ProxyCache.hpp"
 #include <geode/FunctionService.hpp>
 /**
@@ -36,7 +36,7 @@ namespace client {
  * @see Execution
  */
 
-class CPPCACHE_EXPORT FunctionServiceImpl : public FunctionService {
+class _GEODE_EXPORT FunctionServiceImpl : public FunctionService {
  public:
   /**
    * This function is used in multiuser mode to execute function on server.
@@ -62,7 +62,7 @@ class CPPCACHE_EXPORT FunctionServiceImpl : public FunctionService {
   std::shared_ptr<ProxyCache> m_proxyCache;
   friend class ProxyCache;
 
-  FRIEND_STD_SHARED_PTR(FunctionServiceImpl)
+  _GEODE_FRIEND_STD_SHARED_PTR(FunctionServiceImpl)
 };
 }  // namespace client
 }  // namespace geode
diff --git a/cppcache/src/IntQueue.hpp b/cppcache/src/IntQueue.hpp
index f153cf6..64f41ab 100644
--- a/cppcache/src/IntQueue.hpp
+++ b/cppcache/src/IntQueue.hpp
@@ -33,7 +33,7 @@ namespace client {
 
 template <class T>
 
-class CPPCACHE_EXPORT IntQueue {
+class _GEODE_EXPORT IntQueue {
  public:
   IntQueue() : m_cond(m_mutex) {}
 
diff --git a/cppcache/src/InterestResultPolicy.hpp b/cppcache/src/InterestResultPolicy.hpp
index 50d9aa8..cf86fe8 100644
--- a/cppcache/src/InterestResultPolicy.hpp
+++ b/cppcache/src/InterestResultPolicy.hpp
@@ -23,7 +23,7 @@
 /**
  * @file
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 namespace apache {
 namespace geode {
@@ -32,7 +32,7 @@ namespace client {
  * @class InterestResultPolicy InterestResultPolicy.hpp
  * Policy class for interest result.
  */
-class CPPCACHE_EXPORT InterestResultPolicy {
+class _GEODE_EXPORT InterestResultPolicy {
   // public static methods
  public:
   static char nextOrdinal;
diff --git a/cppcache/src/InternalCacheTransactionManager2PC.hpp b/cppcache/src/InternalCacheTransactionManager2PC.hpp
index a6df810..090c26a 100644
--- a/cppcache/src/InternalCacheTransactionManager2PC.hpp
+++ b/cppcache/src/InternalCacheTransactionManager2PC.hpp
@@ -48,7 +48,7 @@ namespace client {
  * @since 8.3
  *
  */
-class CPPCACHE_EXPORT InternalCacheTransactionManager2PC
+class _GEODE_EXPORT InternalCacheTransactionManager2PC
     : public virtual apache::geode::client::CacheTransactionManager {
  public:
   /**
diff --git a/cppcache/src/LRUAction.hpp b/cppcache/src/LRUAction.hpp
index 6491c22..a4a75eb 100644
--- a/cppcache/src/LRUAction.hpp
+++ b/cppcache/src/LRUAction.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cache.hpp>
 #include <geode/PersistenceManager.hpp>
 #include "MapEntry.hpp"
@@ -36,7 +36,7 @@ namespace client {
  * @brief abstract behavior for different eviction actions.
  */
 class LRUEntriesMap;
-class CPPCACHE_EXPORT LRUAction {
+class _GEODE_EXPORT LRUAction {
  protected:
   bool m_invalidates;
   bool m_destroys;
@@ -94,7 +94,7 @@ class CPPCACHE_EXPORT LRUAction {
 /**
  * @brief LRUAction for destroy (distributed)
  */
-class CPPCACHE_EXPORT LRUDestroyAction : public virtual LRUAction {
+class _GEODE_EXPORT LRUDestroyAction : public virtual LRUAction {
  private:
   RegionInternal* m_regionPtr;
   // UNUSED LRUEntriesMap* m_entriesMapPtr;
@@ -133,7 +133,7 @@ class CPPCACHE_EXPORT LRUDestroyAction : public virtual LRUAction {
 /**
  * @brief LRUAction for invalidate.
  */
-class CPPCACHE_EXPORT LRULocalInvalidateAction : public virtual LRUAction {
+class _GEODE_EXPORT LRULocalInvalidateAction : public virtual LRUAction {
  private:
   RegionInternal* m_regionPtr;
   // UNUSED LRUEntriesMap* m_entriesMapPtr;
@@ -158,7 +158,7 @@ class CPPCACHE_EXPORT LRULocalInvalidateAction : public virtual LRUAction {
 /**
  * @brief LRUAction for invalidate.
  */
-class CPPCACHE_EXPORT LRUOverFlowToDiskAction : public virtual LRUAction {
+class _GEODE_EXPORT LRUOverFlowToDiskAction : public virtual LRUAction {
  private:
   RegionInternal* m_regionPtr;
   LRUEntriesMap* m_entriesMapPtr;
diff --git a/cppcache/src/LRUEntriesMap.cpp b/cppcache/src/LRUEntriesMap.cpp
index b066689..84b7740 100644
--- a/cppcache/src/LRUEntriesMap.cpp
+++ b/cppcache/src/LRUEntriesMap.cpp
@@ -29,7 +29,7 @@ namespace client {
 /**
  * @brief LRUAction for testing map outside of a region....
  */
-class CPPCACHE_EXPORT TestMapAction : public virtual LRUAction {
+class _GEODE_EXPORT TestMapAction : public virtual LRUAction {
  private:
   EntriesMap* m_eMap;
 
diff --git a/cppcache/src/LRUEntriesMap.hpp b/cppcache/src/LRUEntriesMap.hpp
index d3452e2..165f917 100644
--- a/cppcache/src/LRUEntriesMap.hpp
+++ b/cppcache/src/LRUEntriesMap.hpp
@@ -21,7 +21,7 @@
 #define GEODE_LRUENTRIESMAP_H_
 
 #include <atomic>
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cache.hpp>
 #include "ConcurrentEntriesMap.hpp"
 #include "LRUAction.hpp"
@@ -57,9 +57,9 @@ class EvictionController;
  * its constructor and destructor but has no user-written assignment operator.
  * Fix : Make the class Non Assinable
  */
-class CPPCACHE_EXPORT LRUEntriesMap : public ConcurrentEntriesMap,
-                                      private NonCopyable,
-                                      private NonAssignable {
+class _GEODE_EXPORT LRUEntriesMap : public ConcurrentEntriesMap,
+                                    private NonCopyable,
+                                    private NonAssignable {
  protected:
   LRUAction* m_action;
   LRUList<MapEntryImpl, MapEntryT<LRUMapEntry, 0, 0> > m_lruList;
diff --git a/cppcache/src/LRUExpMapEntry.hpp b/cppcache/src/LRUExpMapEntry.hpp
index 67a0f61..42cf7b7 100644
--- a/cppcache/src/LRUExpMapEntry.hpp
+++ b/cppcache/src/LRUExpMapEntry.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_LRUEXPMAPENTRY_H_
 #define GEODE_LRUEXPMAPENTRY_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "MapEntry.hpp"
 #include "LRUList.hpp"
 #include "VersionStamp.hpp"
@@ -31,9 +31,9 @@ namespace client {
 /**
  * @brief Hold region mapped entry value and lru information.
  */
-class CPPCACHE_EXPORT LRUExpMapEntry : public MapEntryImpl,
-                                       public LRUEntryProperties,
-                                       public ExpEntryProperties {
+class _GEODE_EXPORT LRUExpMapEntry : public MapEntryImpl,
+                                     public LRUEntryProperties,
+                                     public ExpEntryProperties {
  public:
   virtual ~LRUExpMapEntry() {}
 
@@ -63,8 +63,8 @@ class CPPCACHE_EXPORT LRUExpMapEntry : public MapEntryImpl,
   LRUExpMapEntry& operator=(const LRUExpMapEntry&);
 };
 
-class CPPCACHE_EXPORT VersionedLRUExpMapEntry : public LRUExpMapEntry,
-                                                public VersionStamp {
+class _GEODE_EXPORT VersionedLRUExpMapEntry : public LRUExpMapEntry,
+                                              public VersionStamp {
  public:
   virtual ~VersionedLRUExpMapEntry() {}
 
@@ -83,7 +83,7 @@ class CPPCACHE_EXPORT VersionedLRUExpMapEntry : public LRUExpMapEntry,
   VersionedLRUExpMapEntry& operator=(const VersionedLRUExpMapEntry&);
 };
 
-class CPPCACHE_EXPORT LRUExpEntryFactory : public EntryFactory {
+class _GEODE_EXPORT LRUExpEntryFactory : public EntryFactory {
  public:
   using EntryFactory::EntryFactory;
 
diff --git a/cppcache/src/LRUList.hpp b/cppcache/src/LRUList.hpp
index ad1b364..28f0e75 100644
--- a/cppcache/src/LRUList.hpp
+++ b/cppcache/src/LRUList.hpp
@@ -22,7 +22,7 @@
 
 #include <atomic>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <memory>
 
 #include "util/concurrent/spinlock_mutex.hpp"
@@ -39,7 +39,7 @@ namespace client {
 /**
  * @brief This class encapsulates LRU specific properties for a LRUList node.
  */
-class CPPCACHE_EXPORT LRUEntryProperties {
+class _GEODE_EXPORT LRUEntryProperties {
  public:
   inline LRUEntryProperties() : m_bits(0), m_persistenceInfo(nullptr) {}
 
diff --git a/cppcache/src/LRULocalDestroyAction.hpp b/cppcache/src/LRULocalDestroyAction.hpp
index ee89040..0bb7189 100644
--- a/cppcache/src/LRULocalDestroyAction.hpp
+++ b/cppcache/src/LRULocalDestroyAction.hpp
@@ -21,7 +21,7 @@
  */
 
 #include <atomic>
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "LRUAction.hpp"
 #include "RegionInternal.hpp"
 #include "MapEntry.hpp"
@@ -33,7 +33,7 @@ namespace client {
 /**
  * @brief LRUAction for localDestroy.
  */
-class CPPCACHE_EXPORT LRULocalDestroyAction : public virtual LRUAction {
+class _GEODE_EXPORT LRULocalDestroyAction : public virtual LRUAction {
  private:
   RegionInternal* m_regionPtr;
   LRUEntriesMap* m_entriesMapPtr;
diff --git a/cppcache/src/LRUMapEntry.hpp b/cppcache/src/LRUMapEntry.hpp
index 649e2d3..55dae4c 100644
--- a/cppcache/src/LRUMapEntry.hpp
+++ b/cppcache/src/LRUMapEntry.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CacheableKey.hpp>
 #include "MapEntry.hpp"
 #include "LRUList.hpp"
@@ -59,8 +59,8 @@ namespace client {
  *
  *
  */
-class CPPCACHE_EXPORT LRUMapEntry : public MapEntryImpl,
-                                    public LRUEntryProperties {
+class _GEODE_EXPORT LRUMapEntry : public MapEntryImpl,
+                                  public LRUEntryProperties {
  public:
   virtual ~LRUMapEntry() {}
 
@@ -87,8 +87,8 @@ class CPPCACHE_EXPORT LRUMapEntry : public MapEntryImpl,
   LRUMapEntry& operator=(const LRUMapEntry&);
 };
 
-class CPPCACHE_EXPORT VersionedLRUMapEntry : public LRUMapEntry,
-                                             public VersionStamp {
+class _GEODE_EXPORT VersionedLRUMapEntry : public LRUMapEntry,
+                                           public VersionStamp {
  public:
   virtual ~VersionedLRUMapEntry() {}
 
@@ -105,7 +105,7 @@ class CPPCACHE_EXPORT VersionedLRUMapEntry : public LRUMapEntry,
   VersionedLRUMapEntry& operator=(const VersionedLRUMapEntry&);
 };
 
-class CPPCACHE_EXPORT LRUEntryFactory : public EntryFactory {
+class _GEODE_EXPORT LRUEntryFactory : public EntryFactory {
  public:
   using EntryFactory::EntryFactory;
 
diff --git a/cppcache/src/LocalRegion.cpp b/cppcache/src/LocalRegion.cpp
index dbc7cf1..9dbf983 100644
--- a/cppcache/src/LocalRegion.cpp
+++ b/cppcache/src/LocalRegion.cpp
@@ -709,8 +709,8 @@ LocalRegion::~LocalRegion() {
   m_writer = nullptr;
   m_loader = nullptr;
 
-  GF_SAFE_DELETE(m_entries);
-  GF_SAFE_DELETE(m_regionStats);
+  _GEODE_SAFE_DELETE(m_entries);
+  _GEODE_SAFE_DELETE(m_regionStats);
 }
 
 /**
@@ -2389,7 +2389,7 @@ GfErrType LocalRegion::destroyRegionNoThrow(
 
   release(true);
   if (m_regionAttributes->getCachingEnabled()) {
-    GF_SAFE_DELETE(m_entries);
+    _GEODE_SAFE_DELETE(m_entries);
   }
   GF_D_ASSERT(m_destroyPending);
 
diff --git a/cppcache/src/LocalRegion.hpp b/cppcache/src/LocalRegion.hpp
index ab01928..c6f4b9f 100644
--- a/cppcache/src/LocalRegion.hpp
+++ b/cppcache/src/LocalRegion.hpp
@@ -24,7 +24,7 @@
  * @file
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CacheStatistics.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/CacheableKey.hpp>
@@ -120,7 +120,7 @@ typedef std::unordered_map<std::shared_ptr<CacheableKey>,
  * starting with the root's subregions.
  */
 
-class CPPCACHE_EXPORT LocalRegion : public RegionInternal {
+class _GEODE_EXPORT LocalRegion : public RegionInternal {
   /**
    * @brief Public Methods for Region
    */
diff --git a/cppcache/src/Log.cpp b/cppcache/src/Log.cpp
index d1ed153..f2f9a9b 100644
--- a/cppcache/src/Log.cpp
+++ b/cppcache/src/Log.cpp
@@ -34,7 +34,7 @@
 #include <ace/Dirent_Selector.h>
 #include <ace/OS_NS_sys_stat.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/util/LogLevel.hpp>
 
diff --git a/cppcache/src/MapEntry.hpp b/cppcache/src/MapEntry.hpp
index 1c8c4e4..5526536 100644
--- a/cppcache/src/MapEntry.hpp
+++ b/cppcache/src/MapEntry.hpp
@@ -24,7 +24,7 @@
 #include <memory>
 #include <utility>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cacheable.hpp>
 #include <geode/CacheableKey.hpp>
 #include <geode/ExceptionTypes.hpp>
@@ -38,17 +38,17 @@
 namespace apache {
 namespace geode {
 namespace client {
-class CPPCACHE_EXPORT MapEntry;
-class CPPCACHE_EXPORT MapEntryImpl;
+class _GEODE_EXPORT MapEntry;
+class _GEODE_EXPORT MapEntryImpl;
 
-class CPPCACHE_EXPORT LRUEntryProperties;
+class _GEODE_EXPORT LRUEntryProperties;
 class CacheImpl;
 
 /**
  * @brief This class encapsulates expiration specific properties for
  *   a MapEntry.
  */
-class CPPCACHE_EXPORT ExpEntryProperties {
+class _GEODE_EXPORT ExpEntryProperties {
  public:
   typedef std::chrono::system_clock::time_point time_point;
 
@@ -109,7 +109,7 @@ class CPPCACHE_EXPORT ExpEntryProperties {
 /**
  * @brief Interface class for region mapped entry value.
  */
-class CPPCACHE_EXPORT MapEntry {
+class _GEODE_EXPORT MapEntry {
  public:
   virtual ~MapEntry() {}
 
@@ -257,8 +257,8 @@ class MapEntryImpl : public MapEntry,
   MapEntryImpl& operator=(const MapEntryImpl&);
 };
 
-class CPPCACHE_EXPORT VersionedMapEntryImpl : public MapEntryImpl,
-                                              public VersionStamp {
+class _GEODE_EXPORT VersionedMapEntryImpl : public MapEntryImpl,
+                                            public VersionStamp {
  public:
   virtual ~VersionedMapEntryImpl() {}
 
@@ -276,8 +276,7 @@ class CPPCACHE_EXPORT VersionedMapEntryImpl : public MapEntryImpl,
   VersionedMapEntryImpl& operator=(const VersionedMapEntryImpl&);
 };
 
-
-class CPPCACHE_EXPORT EntryFactory {
+class _GEODE_EXPORT EntryFactory {
  public:
   EntryFactory(const bool concurrencyChecksEnabled)
       : m_concurrencyChecksEnabled(concurrencyChecksEnabled) {}
diff --git a/cppcache/src/MapEntryT.hpp b/cppcache/src/MapEntryT.hpp
index 27bf2e5..cf858c4 100644
--- a/cppcache/src/MapEntryT.hpp
+++ b/cppcache/src/MapEntryT.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_MAPENTRYT_H_
 #define GEODE_MAPENTRYT_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "MapEntry.hpp"
 #include "TrackedMapEntry.hpp"
 
@@ -134,7 +134,7 @@ class MapEntryT : public TBase {
   MapEntryT(const MapEntryT&);
   MapEntryT& operator=(const MapEntryT&);
 
-  FRIEND_STD_SHARED_PTR(MapEntryT)
+  _GEODE_FRIEND_STD_SHARED_PTR(MapEntryT)
 };
 
 // specialization of MapEntryT to terminate the recursive template definition
diff --git a/cppcache/src/MapSegment.hpp b/cppcache/src/MapSegment.hpp
index af582e3..65b886f 100644
--- a/cppcache/src/MapSegment.hpp
+++ b/cppcache/src/MapSegment.hpp
@@ -23,7 +23,7 @@
 #include <vector>
 #include <memory>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include <geode/CacheableKey.hpp>
 #include "MapEntry.hpp"
@@ -77,7 +77,7 @@ typedef ::ACE_Hash_Map_Manager_Ex<
     CacheableKeyHashMap;
 
 /** @brief type wrapper around the ACE map implementation. */
-class CPPCACHE_EXPORT MapSegment {
+class _GEODE_EXPORT MapSegment {
  private:
   // contain
   CacheableKeyHashMap* m_map;
diff --git a/cppcache/src/MapWithLock.hpp b/cppcache/src/MapWithLock.hpp
index 92217eb..3ed4650 100644
--- a/cppcache/src/MapWithLock.hpp
+++ b/cppcache/src/MapWithLock.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CacheableKey.hpp>
 
 #include <ace/Hash_Map_Manager.h>
diff --git a/cppcache/src/MemberListForVersionStamp.hpp b/cppcache/src/MemberListForVersionStamp.hpp
index 23c6544..6a0571f 100644
--- a/cppcache/src/MemberListForVersionStamp.hpp
+++ b/cppcache/src/MemberListForVersionStamp.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <memory>
 #include "DSMemberForVersionStamp.hpp"
 #include "ace/RW_Thread_Mutex.h"
diff --git a/cppcache/src/NoResult.hpp b/cppcache/src/NoResult.hpp
index 89bdb65..aefa7ea 100644
--- a/cppcache/src/NoResult.hpp
+++ b/cppcache/src/NoResult.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_NORESULT_H_
 #define GEODE_NORESULT_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/ResultCollector.hpp>
 
@@ -40,7 +40,7 @@ namespace client {
  *
  *
  */
-class CPPCACHE_EXPORT NoResult : public ResultCollector {
+class _GEODE_EXPORT NoResult : public ResultCollector {
  public:
   NoResult() = default;
   virtual ~NoResult() override = default;
diff --git a/cppcache/src/NonCopyable.hpp b/cppcache/src/NonCopyable.hpp
index 7b17059..1bbd91f 100644
--- a/cppcache/src/NonCopyable.hpp
+++ b/cppcache/src/NonCopyable.hpp
@@ -23,7 +23,7 @@
 namespace apache {
 namespace geode {
 namespace client {
-class CPPCACHE_EXPORT NonCopyable {
+class _GEODE_EXPORT NonCopyable {
  protected:
   NonCopyable() {}
   ~NonCopyable() {}
@@ -31,7 +31,7 @@ class CPPCACHE_EXPORT NonCopyable {
  private:
   NonCopyable(const NonCopyable&);
 };
-class CPPCACHE_EXPORT NonAssignable {
+class _GEODE_EXPORT NonAssignable {
  protected:
   NonAssignable() {}
   ~NonAssignable() {}
diff --git a/cppcache/src/PdxFieldType.hpp b/cppcache/src/PdxFieldType.hpp
index 1990b80..b7a3081 100644
--- a/cppcache/src/PdxFieldType.hpp
+++ b/cppcache/src/PdxFieldType.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_PDXFIELDTYPE_H_
 #define GEODE_PDXFIELDTYPE_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Serializable.hpp>
 #include <geode/CacheableString.hpp>
 #include <geode/DataInput.hpp>
@@ -33,7 +33,7 @@ namespace client {
 
 class PdxFieldType;
 
-class CPPCACHE_EXPORT PdxFieldType : public Serializable {
+class _GEODE_EXPORT PdxFieldType : public Serializable {
  private:
   std::string m_fieldName;
   std::string m_className;
diff --git a/cppcache/src/PdxInstanceFactoryImpl.hpp b/cppcache/src/PdxInstanceFactoryImpl.hpp
index 172b361..f72577d 100644
--- a/cppcache/src/PdxInstanceFactoryImpl.hpp
+++ b/cppcache/src/PdxInstanceFactoryImpl.hpp
@@ -46,7 +46,7 @@ typedef std::map<std::string, std::shared_ptr<Cacheable>> FieldVsValues;
  * multiple factories or use {@link PdxInstance#createWriter} to create
  * subsequent instances.
  */
-class CPPCACHE_EXPORT PdxInstanceFactoryImpl
+class _GEODE_EXPORT PdxInstanceFactoryImpl
     : public PdxInstanceFactory,
       public std::enable_shared_from_this<PdxInstanceFactoryImpl> {
  public:
diff --git a/cppcache/src/PdxInstanceImpl.cpp b/cppcache/src/PdxInstanceImpl.cpp
index ebf542a..1526d0d 100644
--- a/cppcache/src/PdxInstanceImpl.cpp
+++ b/cppcache/src/PdxInstanceImpl.cpp
@@ -70,7 +70,7 @@ bool sortFunc(std::shared_ptr<PdxFieldType> field1,
   }
 }
 
-PdxInstanceImpl::~PdxInstanceImpl() { GF_SAFE_DELETE_ARRAY(m_buffer); }
+PdxInstanceImpl::~PdxInstanceImpl() { _GEODE_SAFE_DELETE_ARRAY(m_buffer); }
 
 PdxInstanceImpl::PdxInstanceImpl(
     apache::geode::client::FieldVsValues fieldVsValue,
@@ -984,7 +984,7 @@ std::string PdxInstanceImpl::toString() const {
           for (int i = 0; i < length; i++) {
             toString += to_utf8(std::u16string(value, length));
           }
-          GF_SAFE_DELETE_ARRAY(value);
+          _GEODE_SAFE_DELETE_ARRAY(value);
         }
         break;
       }
@@ -1003,7 +1003,7 @@ std::string PdxInstanceImpl::toString() const {
           for (int i = 0; i < length; i++) {
             toString += std::to_string(value[i]);
           }
-          GF_SAFE_DELETE_ARRAY(value);
+          _GEODE_SAFE_DELETE_ARRAY(value);
         }
         break;
       }
@@ -1015,7 +1015,7 @@ std::string PdxInstanceImpl::toString() const {
           for (int i = 0; i < length; i++) {
             toString += std::to_string(value[i]);
           }
-          GF_SAFE_DELETE_ARRAY(value);
+          _GEODE_SAFE_DELETE_ARRAY(value);
         }
         break;
       }
@@ -1027,7 +1027,7 @@ std::string PdxInstanceImpl::toString() const {
           for (int i = 0; i < length; i++) {
             toString += std::to_string(value[i]);
           }
-          GF_SAFE_DELETE_ARRAY(value);
+          _GEODE_SAFE_DELETE_ARRAY(value);
         }
         break;
       }
@@ -1050,7 +1050,7 @@ std::string PdxInstanceImpl::toString() const {
           for (int i = 0; i < length; i++) {
             toString += std::to_string(value[i]);
           }
-          GF_SAFE_DELETE_ARRAY(value);
+          _GEODE_SAFE_DELETE_ARRAY(value);
         }
         break;
       }
@@ -1081,7 +1081,7 @@ std::string PdxInstanceImpl::toString() const {
           for (int i = 0; i < length; i++) {
             toString += value[i] ? "true" : "false";
           }
-          GF_SAFE_DELETE_ARRAY(value);
+          _GEODE_SAFE_DELETE_ARRAY(value);
         }
         break;
       }
@@ -1441,7 +1441,7 @@ void PdxInstanceImpl::toDataMutable(PdxWriter& writer) {
         position = nextFieldPosition;  // mark next field;
       }
     }
-    GF_SAFE_DELETE_ARRAY(copy);
+    _GEODE_SAFE_DELETE_ARRAY(copy);
   } else {
     for (size_t i = 0; i < pdxFieldList->size(); i++) {
       auto currPf = pdxFieldList->at(i);
diff --git a/cppcache/src/PdxInstanceImpl.hpp b/cppcache/src/PdxInstanceImpl.hpp
index d0ce4fb..457f3a6 100644
--- a/cppcache/src/PdxInstanceImpl.hpp
+++ b/cppcache/src/PdxInstanceImpl.hpp
@@ -38,7 +38,7 @@ namespace client {
 
 typedef std::map<std::string, std::shared_ptr<Cacheable>> FieldVsValues;
 
-class CPPCACHE_EXPORT PdxInstanceImpl : public WritablePdxInstance {
+class _GEODE_EXPORT PdxInstanceImpl : public WritablePdxInstance {
  public:
   /**
    * @brief destructor
diff --git a/cppcache/src/PdxType.cpp b/cppcache/src/PdxType.cpp
index 78ed2a3..22b7eb8 100644
--- a/cppcache/src/PdxType.cpp
+++ b/cppcache/src/PdxType.cpp
@@ -37,9 +37,9 @@ namespace client {
 const char* PdxType::m_javaPdxClass = "org.apache.geode.pdx.internal.PdxType";
 
 PdxType::~PdxType() {
-  GF_SAFE_DELETE(m_pdxFieldTypes);
-  GF_SAFE_DELETE_ARRAY(m_remoteToLocalFieldMap);
-  GF_SAFE_DELETE_ARRAY(m_localToRemoteFieldMap);
+  _GEODE_SAFE_DELETE(m_pdxFieldTypes);
+  _GEODE_SAFE_DELETE_ARRAY(m_remoteToLocalFieldMap);
+  _GEODE_SAFE_DELETE_ARRAY(m_localToRemoteFieldMap);
 }
 
 // PdxType::PdxType() : PdxType(nullptr, false) {}
diff --git a/cppcache/src/PdxTypeRegistry.hpp b/cppcache/src/PdxTypeRegistry.hpp
index 30957e5..e58d986 100644
--- a/cppcache/src/PdxTypeRegistry.hpp
+++ b/cppcache/src/PdxTypeRegistry.hpp
@@ -59,7 +59,7 @@ typedef std::unordered_map<std::shared_ptr<PdxSerializable>,
 typedef std::map<std::shared_ptr<PdxType>, int32_t, PdxTypeLessThan>
     PdxTypeToTypeIdMap;
 
-class CPPCACHE_EXPORT PdxTypeRegistry
+class _GEODE_EXPORT PdxTypeRegistry
     : public std::enable_shared_from_this<PdxTypeRegistry> {
  private:
   CacheImpl* cache;
diff --git a/cppcache/src/PdxTypes.hpp b/cppcache/src/PdxTypes.hpp
index 86bf9cf..f5e0309 100644
--- a/cppcache/src/PdxTypes.hpp
+++ b/cppcache/src/PdxTypes.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 class PdxTypes {
  public:
diff --git a/cppcache/src/PersistenceManager.cpp b/cppcache/src/PersistenceManager.cpp
index 9823ddc..c664226 100644
--- a/cppcache/src/PersistenceManager.cpp
+++ b/cppcache/src/PersistenceManager.cpp
@@ -16,14 +16,15 @@
  */
 
 #include <geode/PersistenceManager.hpp>
-#include <geode/Region.hpp>
 
-using namespace apache::geode::client;
+namespace apache {
+namespace geode {
+namespace client {
 
-PersistenceManager::PersistenceManager(const std::shared_ptr<Region>& regionPtr)
-    : m_regionPtr(regionPtr) {
-  // printf("Base constructor PersistenceManager \n");
-}
+constexpr char const* PersistenceManager::MAX_PAGE_COUNT;
+constexpr char const* PersistenceManager::PAGE_SIZE;
+constexpr char const* PersistenceManager::PERSISTENCE_DIR;
 
-PersistenceManager::~PersistenceManager() {}
-PersistenceManager::PersistenceManager() {}
+}  // namespace client
+}  // namespace geode
+}  // namespace apache
diff --git a/cppcache/src/PoolAttributes.hpp b/cppcache/src/PoolAttributes.hpp
index 087b22f..d940a89 100644
--- a/cppcache/src/PoolAttributes.hpp
+++ b/cppcache/src/PoolAttributes.hpp
@@ -26,7 +26,7 @@
 
 #include <ace/OS.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 
 /**
diff --git a/cppcache/src/PoolStatistics.cpp b/cppcache/src/PoolStatistics.cpp
index e5f5188..97cd969 100644
--- a/cppcache/src/PoolStatistics.cpp
+++ b/cppcache/src/PoolStatistics.cpp
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "PoolStatistics.hpp"
 //#include "StatisticsFactory.hpp"
diff --git a/cppcache/src/PoolStatistics.hpp b/cppcache/src/PoolStatistics.hpp
index 51403a0..00658fd 100644
--- a/cppcache/src/PoolStatistics.hpp
+++ b/cppcache/src/PoolStatistics.hpp
@@ -21,7 +21,7 @@
 
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "statistics/Statistics.hpp"
 #include "statistics/StatisticsFactory.hpp"
diff --git a/cppcache/src/PoolXmlCreation.hpp b/cppcache/src/PoolXmlCreation.hpp
index 1e42a34..df33f3a 100644
--- a/cppcache/src/PoolXmlCreation.hpp
+++ b/cppcache/src/PoolXmlCreation.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 #include <vector>
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/Pool.hpp>
 #include "PoolXmlCreation.hpp"
@@ -38,7 +38,7 @@ class Cache;
  *
  * @since 3.0
  */
-class CPPCACHE_EXPORT PoolXmlCreation {
+class _GEODE_EXPORT PoolXmlCreation {
  private:
   /** An <code>AttributesFactory</code> for creating default
    * <code>PoolAttribute</code>s */
diff --git a/cppcache/src/PreservedDataExpiryHandler.hpp b/cppcache/src/PreservedDataExpiryHandler.hpp
index 5e59cbf..c6423b7 100644
--- a/cppcache/src/PreservedDataExpiryHandler.hpp
+++ b/cppcache/src/PreservedDataExpiryHandler.hpp
@@ -26,7 +26,7 @@
  *      Author: npatel
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cache.hpp>
 #include <geode/PdxSerializable.hpp>
 #include "CacheImpl.hpp"
@@ -48,7 +48,7 @@ namespace client {
  * when a preserved data expires.
  *
  */
-class CPPCACHE_EXPORT PreservedDataExpiryHandler : public ACE_Event_Handler {
+class _GEODE_EXPORT PreservedDataExpiryHandler : public ACE_Event_Handler {
  public:
   /**
    * Constructor
diff --git a/cppcache/src/ProxyCache.cpp b/cppcache/src/ProxyCache.cpp
index 21ac11f..5ea7413 100644
--- a/cppcache/src/ProxyCache.cpp
+++ b/cppcache/src/ProxyCache.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <memory>
 
 #include <geode/DistributedSystem.hpp>
diff --git a/cppcache/src/ProxyCache.hpp b/cppcache/src/ProxyCache.hpp
index 17160a0..66eb298 100644
--- a/cppcache/src/ProxyCache.hpp
+++ b/cppcache/src/ProxyCache.hpp
@@ -19,7 +19,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Region.hpp>
 #include <geode/DistributedSystem.hpp>
 #include <geode/QueryService.hpp>
@@ -51,7 +51,7 @@ class FunctionServiceImpl;
  * <p>A cache can have multiple root regions, each with a different name.
  *
  */
-class CPPCACHE_EXPORT ProxyCache
+class _GEODE_EXPORT ProxyCache
     : public RegionService,
       public std::enable_shared_from_this<ProxyCache> {
   /**
diff --git a/cppcache/src/ProxyRegion.hpp b/cppcache/src/ProxyRegion.hpp
index decfe98..e4bd89a 100644
--- a/cppcache/src/ProxyRegion.hpp
+++ b/cppcache/src/ProxyRegion.hpp
@@ -22,7 +22,7 @@
 
 #include <algorithm>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CacheableKey.hpp>
 #include <geode/CacheableString.hpp>
 #include <geode/CacheStatistics.hpp>
@@ -52,7 +52,7 @@ class FunctionService;
  * @class ProxyRegion ProxyRegion.hpp
  * This class wrapper around real region
  */
-class CPPCACHE_EXPORT ProxyRegion : public Region {
+class _GEODE_EXPORT ProxyRegion : public Region {
  public:
   virtual const std::string& getName() const override {
     return m_realRegion->getName();
@@ -623,7 +623,7 @@ class CPPCACHE_EXPORT ProxyRegion : public Region {
   std::shared_ptr<RegionInternal> m_realRegion;
   friend class FunctionService;
 
-  FRIEND_STD_SHARED_PTR(ProxyRegion)
+  _GEODE_FRIEND_STD_SHARED_PTR(ProxyRegion)
 };
 
 }  // namespace client
diff --git a/cppcache/src/ProxyRemoteQueryService.hpp b/cppcache/src/ProxyRemoteQueryService.hpp
index 7d4cd4a..3aad960 100644
--- a/cppcache/src/ProxyRemoteQueryService.hpp
+++ b/cppcache/src/ProxyRemoteQueryService.hpp
@@ -19,7 +19,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <memory>
 #include "CqService.hpp"
 #include "UserAttributes.hpp"
@@ -36,7 +36,7 @@ namespace client {
 class CacheImpl;
 class ThinClientPoolDM;
 
-class CPPCACHE_EXPORT ProxyRemoteQueryService : public QueryService {
+class _GEODE_EXPORT ProxyRemoteQueryService : public QueryService {
  public:
   ProxyRemoteQueryService(std::shared_ptr<ProxyCache> cptr);
   virtual ~ProxyRemoteQueryService() = default;
diff --git a/cppcache/src/PutAllPartialResultServerException.hpp b/cppcache/src/PutAllPartialResultServerException.hpp
index 113a16f..5e76836 100644
--- a/cppcache/src/PutAllPartialResultServerException.hpp
+++ b/cppcache/src/PutAllPartialResultServerException.hpp
@@ -35,7 +35,7 @@ class PutAllPartialResultServerException;
  * @brief PutAllPartialResultServerException class is used to encapsulate
  *geode PutAllPartialResultServerException in case of PutAll execution.
  **/
-class CPPCACHE_EXPORT PutAllPartialResultServerException : public Serializable {
+class _GEODE_EXPORT PutAllPartialResultServerException : public Serializable {
   /**
    * @brief public methods
    */
diff --git a/cppcache/src/Queue.hpp b/cppcache/src/Queue.hpp
index 36ec11c..103ae33 100644
--- a/cppcache/src/Queue.hpp
+++ b/cppcache/src/Queue.hpp
@@ -31,7 +31,7 @@ namespace geode {
 namespace client {
 
 template <class T>
-class CPPCACHE_EXPORT Queue {
+class _GEODE_EXPORT Queue {
  public:
   /**
    * Constructor with parameter to specify whether the contained objects
diff --git a/cppcache/src/ReadWriteLock.hpp b/cppcache/src/ReadWriteLock.hpp
index 7b325fd..8c4b1a6 100644
--- a/cppcache/src/ReadWriteLock.hpp
+++ b/cppcache/src/ReadWriteLock.hpp
@@ -42,7 +42,7 @@ class TimedTryWriteGuard {
   Condition cond_;
 };
 
-class CPPCACHE_EXPORT ReadGuard {
+class _GEODE_EXPORT ReadGuard {
  public:
   ReadGuard(ACE_RW_Thread_Mutex& lock) : lock_(lock) { lock_.acquire_read(); }
 
diff --git a/cppcache/src/RegionConfig.hpp b/cppcache/src/RegionConfig.hpp
index 2c08c79..34cb9df 100644
--- a/cppcache/src/RegionConfig.hpp
+++ b/cppcache/src/RegionConfig.hpp
@@ -39,7 +39,7 @@ namespace client {
 
 class RegionConfig;
 
-class CPPCACHE_EXPORT RegionConfig {
+class _GEODE_EXPORT RegionConfig {
  public:
   RegionConfig(const std::string& s, const std::string& c);
 
diff --git a/cppcache/src/RegionExpiryHandler.hpp b/cppcache/src/RegionExpiryHandler.hpp
index ba0c2da..f3292b7 100644
--- a/cppcache/src/RegionExpiryHandler.hpp
+++ b/cppcache/src/RegionExpiryHandler.hpp
@@ -22,7 +22,7 @@
 
 #include <ace/Time_Value_T.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Region.hpp>
 #include <geode/ExpirationAction.hpp>
 #include "RegionInternal.hpp"
@@ -44,7 +44,7 @@ namespace client {
  * manager when region is destroyed
  *
  */
-class CPPCACHE_EXPORT RegionExpiryHandler : public ACE_Event_Handler {
+class _GEODE_EXPORT RegionExpiryHandler : public ACE_Event_Handler {
  public:
   /**
    * Constructor
diff --git a/cppcache/src/RegionGlobalLocks.hpp b/cppcache/src/RegionGlobalLocks.hpp
index ba1af81..16d1dd9 100644
--- a/cppcache/src/RegionGlobalLocks.hpp
+++ b/cppcache/src/RegionGlobalLocks.hpp
@@ -26,7 +26,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT RegionGlobalLocks {
+class _GEODE_EXPORT RegionGlobalLocks {
  public:
   RegionGlobalLocks(LocalRegion* region, bool isFailover = true)
       : m_region(region), m_isFailover(isFailover) {
diff --git a/cppcache/src/RegionInternal.hpp b/cppcache/src/RegionInternal.hpp
index efd4993..17e92cd 100644
--- a/cppcache/src/RegionInternal.hpp
+++ b/cppcache/src/RegionInternal.hpp
@@ -29,6 +29,7 @@
 #include "RegionStats.hpp"
 #include "EventId.hpp"
 #include "HashMapOfException.hpp"
+#include "ErrType.hpp"
 
 namespace apache {
 namespace geode {
diff --git a/cppcache/src/RegionStats.cpp b/cppcache/src/RegionStats.cpp
index 0674937..7ce40c7 100644
--- a/cppcache/src/RegionStats.cpp
+++ b/cppcache/src/RegionStats.cpp
@@ -18,7 +18,7 @@
 #include <ace/Thread_Mutex.h>
 #include <ace/Singleton.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "RegionStats.hpp"
 #include "util/concurrent/spinlock_mutex.hpp"
diff --git a/cppcache/src/RegionStats.hpp b/cppcache/src/RegionStats.hpp
index b0c8fc3..963e747 100644
--- a/cppcache/src/RegionStats.hpp
+++ b/cppcache/src/RegionStats.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "statistics/Statistics.hpp"
 #include "statistics/StatisticsFactory.hpp"
@@ -35,7 +35,7 @@ using statistics::StatisticDescriptor;
 using statistics::StatisticsType;
 using statistics::Statistics;
 
-class CPPCACHE_EXPORT RegionStats {
+class _GEODE_EXPORT RegionStats {
  public:
   /** hold statistics for a region.. */
   RegionStats(statistics::StatisticsFactory* factory, const std::string& regionName);
diff --git a/cppcache/src/RegionXmlCreation.hpp b/cppcache/src/RegionXmlCreation.hpp
index deb1ee4..37bd8ff 100644
--- a/cppcache/src/RegionXmlCreation.hpp
+++ b/cppcache/src/RegionXmlCreation.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 #include <vector>
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/Region.hpp>
 #include "RegionXmlCreation.hpp"
@@ -38,7 +38,7 @@ class Cache;
  *
  * @since 1.0
  */
-class CPPCACHE_EXPORT RegionXmlCreation {
+class _GEODE_EXPORT RegionXmlCreation {
  private:
   /** An <code>AttributesFactory</code> for creating default
    * <code>RegionAttribute</code>s */
diff --git a/cppcache/src/RemoteQuery.hpp b/cppcache/src/RemoteQuery.hpp
index ce6e03a..6953c52 100644
--- a/cppcache/src/RemoteQuery.hpp
+++ b/cppcache/src/RemoteQuery.hpp
@@ -23,7 +23,7 @@
 #include <string>
 #include <memory>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/Query.hpp>
 #include <geode/SelectResults.hpp>
@@ -42,7 +42,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT RemoteQuery : public Query {
+class _GEODE_EXPORT RemoteQuery : public Query {
   std::string m_queryString;
 
   std::shared_ptr<RemoteQueryService> m_queryService;
diff --git a/cppcache/src/RemoteQueryService.cpp b/cppcache/src/RemoteQueryService.cpp
index 6850253..f59431b 100644
--- a/cppcache/src/RemoteQueryService.cpp
+++ b/cppcache/src/RemoteQueryService.cpp
@@ -98,7 +98,7 @@ void RemoteQueryService::close() {
       LOGFINEST("RemoteQueryService::close: destroying DM");
       m_tccdm->destroy();
     }
-    GF_SAFE_DELETE(m_tccdm);
+    _GEODE_SAFE_DELETE(m_tccdm);
     m_invalid = true;
   }
   if (!m_CqPoolsConnected.empty()) {
diff --git a/cppcache/src/RemoteQueryService.hpp b/cppcache/src/RemoteQueryService.hpp
index bf5fb20..3ade30f 100644
--- a/cppcache/src/RemoteQueryService.hpp
+++ b/cppcache/src/RemoteQueryService.hpp
@@ -25,7 +25,7 @@
 
 #include <ace/Recursive_Thread_Mutex.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/QueryService.hpp>
 
 #include "CqService.hpp"
@@ -39,7 +39,7 @@ namespace client {
 class CacheImpl;
 class ThinClientPoolDM;
 typedef std::map<std::string, bool> CqPoolsConnected;
-class CPPCACHE_EXPORT RemoteQueryService
+class _GEODE_EXPORT RemoteQueryService
     : public QueryService,
       public std::enable_shared_from_this<RemoteQueryService> {
  public:
diff --git a/cppcache/src/ResultSetImpl.hpp b/cppcache/src/ResultSetImpl.hpp
index 46b33ce..d17bca0 100644
--- a/cppcache/src/ResultSetImpl.hpp
+++ b/cppcache/src/ResultSetImpl.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 
 #include <geode/ResultSet.hpp>
@@ -35,7 +35,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT ResultSetImpl
+class _GEODE_EXPORT ResultSetImpl
     : public ResultSet,
       public std::enable_shared_from_this<ResultSetImpl> {
  public:
diff --git a/cppcache/src/Serializable.cpp b/cppcache/src/Serializable.cpp
index a11b6bb..ec32299 100644
--- a/cppcache/src/Serializable.cpp
+++ b/cppcache/src/Serializable.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Serializable.hpp>
 #include <geode/CacheableString.hpp>
 
diff --git a/cppcache/src/SerializationRegistry.cpp b/cppcache/src/SerializationRegistry.cpp
index 0f7b813..21d3b3a 100644
--- a/cppcache/src/SerializationRegistry.cpp
+++ b/cppcache/src/SerializationRegistry.cpp
@@ -21,7 +21,7 @@
 #include <ace/Singleton.h>
 #include <ace/Thread_Mutex.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/CacheableBuiltins.hpp>
 #include <geode/CacheableObjectArray.hpp>
 #include <geode/CacheableDate.hpp>
diff --git a/cppcache/src/SerializationRegistry.hpp b/cppcache/src/SerializationRegistry.hpp
index d237721..4de126a 100644
--- a/cppcache/src/SerializationRegistry.hpp
+++ b/cppcache/src/SerializationRegistry.hpp
@@ -27,7 +27,7 @@
 #include <ace/Thread_Mutex.h>
 #include <ace/Null_Mutex.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Serializable.hpp>
 #include <geode/PdxSerializer.hpp>
 #include <geode/GeodeTypeIds.hpp>
@@ -40,6 +40,7 @@
 #include "NonCopyable.hpp"
 #include "GeodeTypeIdsImpl.hpp"
 #include "MemberListForVersionStamp.hpp"
+#include "config.h"
 
 #if defined(_MACOSX)
 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
@@ -133,7 +134,7 @@ class TheTypeMap : private NonCopyable {
 
 class Pool;
 
-class CPPCACHE_EXPORT SerializationRegistry {
+class _GEODE_EXPORT SerializationRegistry {
  public:
   SerializationRegistry() : theTypeMap() {}
 
diff --git a/cppcache/src/ServerLocation.hpp b/cppcache/src/ServerLocation.hpp
index b0e2d60..7de6e55 100644
--- a/cppcache/src/ServerLocation.hpp
+++ b/cppcache/src/ServerLocation.hpp
@@ -35,7 +35,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT ServerLocation : public Serializable {
+class _GEODE_EXPORT ServerLocation : public Serializable {
  public:
   ServerLocation(std::string serverName, int port)
       : Serializable(), m_serverName(std::move(serverName)), m_port(port) {
diff --git a/cppcache/src/Set.hpp b/cppcache/src/Set.hpp
index 1f17d2f..4c9e8f7 100644
--- a/cppcache/src/Set.hpp
+++ b/cppcache/src/Set.hpp
@@ -44,7 +44,7 @@ namespace client {
  * FIX : Make the class non copyable
  */
 template <typename T>
-class CPPCACHE_EXPORT Set : private NonAssignable {
+class _GEODE_EXPORT Set : private NonAssignable {
  public:
   // Iterator for a synchronized Set
   class Iterator {
diff --git a/cppcache/src/StructSetImpl.hpp b/cppcache/src/StructSetImpl.hpp
index ebcdcfc..63ba425 100644
--- a/cppcache/src/StructSetImpl.hpp
+++ b/cppcache/src/StructSetImpl.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include <geode/StructSet.hpp>
 #include <geode/Struct.hpp>
@@ -39,7 +39,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT StructSetImpl
+class _GEODE_EXPORT StructSetImpl
     : public StructSet,
       public std::enable_shared_from_this<StructSetImpl> {
  public:
diff --git a/cppcache/src/SuspendedTxExpiryHandler.hpp b/cppcache/src/SuspendedTxExpiryHandler.hpp
index 5c6c57e..df76dad 100644
--- a/cppcache/src/SuspendedTxExpiryHandler.hpp
+++ b/cppcache/src/SuspendedTxExpiryHandler.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_SUSPENDEDTXEXPIRYHANDLER_H_
 #define GEODE_SUSPENDEDTXEXPIRYHANDLER_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cache.hpp>
 
 #include "CacheTransactionManagerImpl.hpp"
@@ -42,7 +42,7 @@ class CacheTransactionManagerImpl;
  * when a suspended transaction expires.
  *
  */
-class CPPCACHE_EXPORT SuspendedTxExpiryHandler : public ACE_Event_Handler {
+class _GEODE_EXPORT SuspendedTxExpiryHandler : public ACE_Event_Handler {
  public:
   /**
    * Constructor
diff --git a/cppcache/src/SystemProperties.cpp b/cppcache/src/SystemProperties.cpp
index 96c9662..52a82f3 100644
--- a/cppcache/src/SystemProperties.cpp
+++ b/cppcache/src/SystemProperties.cpp
@@ -22,7 +22,7 @@
 #include <ace/OS.h>
 #include <ace/DLL.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/internal/chrono/duration.hpp>
 #include <geode/SystemProperties.hpp>
 #include <geode/ExceptionTypes.hpp>
@@ -133,8 +133,6 @@ constexpr auto DefaultRedundancyMonitorInterval = std::chrono::seconds(10);
 constexpr auto DefaultNotifyAckInterval = std::chrono::seconds(1);
 constexpr auto DefaultNotifyDupCheckLife = std::chrono::seconds(300);
 const char DefaultSecurityPrefix[] = "security-";
-const char DefaultSecurityClientDhAlgo[] ATTR_UNUSED = "";
-const char DefaultSecurityClientKsPath[] ATTR_UNUSED = "";
 const uint32_t DefaultThreadPoolSize = ACE_OS::num_processors() * 2;
 constexpr auto DefaultSuspendedTxTimeout = std::chrono::seconds(30);
 constexpr auto DefaultTombstoneTimeout = std::chrono::seconds(480);
diff --git a/cppcache/src/TXCommitMessage.cpp b/cppcache/src/TXCommitMessage.cpp
index 40b970b..99c2100 100644
--- a/cppcache/src/TXCommitMessage.cpp
+++ b/cppcache/src/TXCommitMessage.cpp
@@ -65,7 +65,7 @@ m_processorId = -1;
   input.readBytes(&m_farsideBaseMembershipId, &m_farsideBaseMembershipIdLen);
 
   if (m_farsideBaseMembershipId != nullptr) {
-    GF_SAFE_DELETE_ARRAY(m_farsideBaseMembershipId);
+    _GEODE_SAFE_DELETE_ARRAY(m_farsideBaseMembershipId);
     m_farsideBaseMembershipId = nullptr;
   }
 
diff --git a/cppcache/src/TXCommitMessage.hpp b/cppcache/src/TXCommitMessage.hpp
index 169f463..d098cf9 100644
--- a/cppcache/src/TXCommitMessage.hpp
+++ b/cppcache/src/TXCommitMessage.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_TXCOMMITMESSAGE_H_
 #define GEODE_TXCOMMITMESSAGE_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/DataInput.hpp>
 #include "RegionCommit.hpp"
 
diff --git a/cppcache/src/TXEntryState.hpp b/cppcache/src/TXEntryState.hpp
index 3f976ae..58eb776 100644
--- a/cppcache/src/TXEntryState.hpp
+++ b/cppcache/src/TXEntryState.hpp
@@ -19,7 +19,7 @@
 
 #ifndef GEODE_TXENTRYSTATE_H_
 #define GEODE_TXENTRYSTATE_H_
-#include "geode/geode_globals.hpp"
+#include "geode/internal/geode_globals.hpp"
 namespace apache {
 namespace geode {
 namespace client {
diff --git a/cppcache/src/TableOfPrimes.hpp b/cppcache/src/TableOfPrimes.hpp
index d819c92..098964b 100644
--- a/cppcache/src/TableOfPrimes.hpp
+++ b/cppcache/src/TableOfPrimes.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <algorithm>
 
 namespace {
@@ -49,7 +49,7 @@ namespace client {
  *  A sampling of primes are used from 0 to 1 million. Not every prime is
  *  necessary, as the map scales, little steps are usually uninteresting.
  */
-class CPPCACHE_EXPORT TableOfPrimes {
+class _GEODE_EXPORT TableOfPrimes {
  public:
   inline static uint32_t getPrimeLength() { return g_primeLen; }
 
diff --git a/cppcache/src/Task.hpp b/cppcache/src/Task.hpp
index 4609d5e..7a4f6cb 100644
--- a/cppcache/src/Task.hpp
+++ b/cppcache/src/Task.hpp
@@ -33,7 +33,7 @@ namespace geode {
 namespace client {
 const char NC_thread[] = "NC thread";
 template <class T>
-class CPPCACHE_EXPORT Task : public ACE_Task_Base {
+class _GEODE_EXPORT Task : public ACE_Task_Base {
  public:
   /// Handle timeout events.
   typedef int (T::*OPERATION)(volatile bool& isRunning);
diff --git a/cppcache/src/TcpConn.cpp b/cppcache/src/TcpConn.cpp
index d694c20..c8093bc 100644
--- a/cppcache/src/TcpConn.cpp
+++ b/cppcache/src/TcpConn.cpp
@@ -30,6 +30,7 @@
 #include "TcpConn.hpp"
 #include "CacheImpl.hpp"
 #include "util/Log.hpp"
+#include "config.h"
 
 namespace apache {
 namespace geode {
@@ -231,7 +232,7 @@ void TcpConn::connect() {
     int32_t lastError = ACE_OS::last_error();
     if (lastError == ETIME || lastError == ETIMEDOUT) {
       //  this is only called by constructor, so we must delete m_io
-      GF_SAFE_DELETE(m_io);
+      _GEODE_SAFE_DELETE(m_io);
       throw TimeoutException(
           "TcpConn::connect Attempt to connect timed out after" +
           to_string(waitMicroSeconds) + ".");
@@ -256,7 +257,7 @@ void TcpConn::connect() {
 void TcpConn::close() {
   if (m_io != nullptr) {
     m_io->close();
-    GF_SAFE_DELETE(m_io);
+    _GEODE_SAFE_DELETE(m_io);
   }
 }
 
diff --git a/cppcache/src/TcpConn.hpp b/cppcache/src/TcpConn.hpp
index 63b01af..45c5c0c 100644
--- a/cppcache/src/TcpConn.hpp
+++ b/cppcache/src/TcpConn.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_TCPCONN_H_
 #define GEODE_TCPCONN_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include <ace/SOCK_Stream.h>
 #include <ace/OS.h>
@@ -46,7 +46,7 @@ namespace client {
 
 #endif
 
-class CPPCACHE_EXPORT TcpConn : public Connector {
+class _GEODE_EXPORT TcpConn : public Connector {
  private:
   ACE_SOCK_Stream* m_io;
 
diff --git a/cppcache/src/TcpSslConn.cpp b/cppcache/src/TcpSslConn.cpp
index 5d214b1..a7123e1 100644
--- a/cppcache/src/TcpSslConn.cpp
+++ b/cppcache/src/TcpSslConn.cpp
@@ -98,7 +98,7 @@ void TcpSslConn::connect() {
     int32_t lastError = ACE_OS::last_error();
     if (lastError == ETIME || lastError == ETIMEDOUT) {
       // this is only called by constructor, so we must delete m_ssl
-      GF_SAFE_DELETE(m_ssl);
+      _GEODE_SAFE_DELETE(m_ssl);
       throw TimeoutException(
           "TcpSslConn::connect Attempt to connect timed out after " +
           to_string(waitMicroSeconds) + ".");
@@ -106,7 +106,7 @@ void TcpSslConn::connect() {
     ACE_OS::snprintf(msg, 256, "TcpSslConn::connect failed with errno: %d: %s",
                      lastError, ACE_OS::strerror(lastError));
     // this is only called by constructor, so we must delete m_ssl
-    GF_SAFE_DELETE(m_ssl);
+    _GEODE_SAFE_DELETE(m_ssl);
     throw GeodeIOException(msg);
   }
 }
diff --git a/cppcache/src/TcrChunkedContext.hpp b/cppcache/src/TcrChunkedContext.hpp
index df40071..a3e741f 100644
--- a/cppcache/src/TcrChunkedContext.hpp
+++ b/cppcache/src/TcrChunkedContext.hpp
@@ -149,7 +149,7 @@ class TcrChunkedContext {
         m_cache(cache),
         m_result(result) {}
 
-  inline ~TcrChunkedContext() { GF_SAFE_DELETE_ARRAY(m_bytes); }
+  inline ~TcrChunkedContext() { _GEODE_SAFE_DELETE_ARRAY(m_bytes); }
 
   inline const uint8_t* getBytes() const { return m_bytes; }
 
diff --git a/cppcache/src/TcrConnection.cpp b/cppcache/src/TcrConnection.cpp
index c8fe1f2..a29666e 100644
--- a/cppcache/src/TcrConnection.cpp
+++ b/cppcache/src/TcrConnection.cpp
@@ -14,7 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 #include <memory.h>
+
 #include <ace/INET_Addr.h>
 #include <ace/OS.h>
 
@@ -23,27 +25,24 @@
 #include <geode/AuthInitialize.hpp>
 
 #include "TcrConnection.hpp"
-
 #include "Connector.hpp"
 #include "TcpSslConn.hpp"
 #include "ClientProxyMembershipID.hpp"
 #include "ThinClientPoolHADM.hpp"
 #include "TcrEndpoint.hpp"
-
 #include "GeodeTypeIdsImpl.hpp"
 #include "TcrConnectionManager.hpp"
 #include "DistributedSystemImpl.hpp"
 #include "Version.hpp"
-
 #include "DiffieHellman.hpp"
-#include "Utils.hpp"  // for RandGen for server challenge
+#include "Utils.hpp"
 #include "ThinClientRegion.hpp"
 
-using namespace apache::geode::client;
+namespace apache {
+namespace geode {
+namespace client {
 
 const int HEADER_LENGTH = 17;
-const int MAXBUFSIZE ATTR_UNUSED = 65536;
-const int BODYLENPOS ATTR_UNUSED = 4;
 const int64_t INITIAL_CONNECTION_ID = 26739;
 
 #define throwException(ex)                            \
@@ -892,7 +891,7 @@ char* TcrConnection::readMessage(size_t* recvLen,
   if (!(msgLen > 0) && request == TcrMessage::GET_CLIENT_PR_METADATA) {
     char* fullMessage;
     *recvLen = HEADER_LENGTH + msgLen;
-    GF_NEW(fullMessage, char[HEADER_LENGTH + msgLen]);
+    _GEODE_NEW(fullMessage, char[HEADER_LENGTH + msgLen]);
     ACE_OS::memcpy(fullMessage, msg_header, HEADER_LENGTH);
     return fullMessage;
     // exit(0);
@@ -902,7 +901,7 @@ char* TcrConnection::readMessage(size_t* recvLen,
   // user has to delete this pointer
   char* fullMessage;
   *recvLen = HEADER_LENGTH + msgLen;
-  GF_NEW(fullMessage, char[HEADER_LENGTH + msgLen]);
+  _GEODE_NEW(fullMessage, char[HEADER_LENGTH + msgLen]);
   ACE_OS::memcpy(fullMessage, msg_header, HEADER_LENGTH);
 
   std::chrono::microseconds mesgBodyTimeout = receiveTimeoutSec;
@@ -947,7 +946,7 @@ char* TcrConnection::readMessage(size_t* recvLen,
   LOGCONFIG("Amey request == TcrMessage::GET_CLIENT_PR_METADATA");
   char* fullMessage2;
   *recvLen = HEADER_LENGTH;
-  GF_NEW( fullMessage2, char[HEADER_LENGTH ] );
+  _GEODE_NEW( fullMessage2, char[HEADER_LENGTH ] );
   ACE_OS::memcpy(fullMessage2, msg_header, HEADER_LENGTH);
   return fullMessage2;
   }*/
@@ -1068,7 +1067,7 @@ void TcrConnection::readMessageChunked(
     isLastChunk = input->read();
 
     uint8_t* chunk_body;
-    GF_NEW(chunk_body, uint8_t[chunkLen]);
+    _GEODE_NEW(chunk_body, uint8_t[chunkLen]);
     error = receiveData(reinterpret_cast<char*>(chunk_body), chunkLen,
                         receiveTimeoutSec, true, false);
     if (error != CONN_NOERR) {
@@ -1135,7 +1134,7 @@ std::shared_ptr<CacheableBytes> TcrConnection::readHandshakeData(
     msgLength = 0;
   }
   char* recvMessage;
-  GF_NEW(recvMessage, char[msgLength + 1]);
+  _GEODE_NEW(recvMessage, char[msgLength + 1]);
   recvMessage[msgLength] = '\0';
   if (msgLength == 0) {
     return CacheableBytes::createNoCopy(reinterpret_cast<int8_t*>(recvMessage),
@@ -1144,13 +1143,13 @@ std::shared_ptr<CacheableBytes> TcrConnection::readHandshakeData(
   if ((error = receiveData(recvMessage, msgLength, connectTimeout, false)) !=
       CONN_NOERR) {
     if (error & CONN_TIMEOUT) {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           TimeoutException("TcrConnection::TcrConnection: "
                            "Timeout in handshake"));
     } else {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           GeodeIOException("TcrConnection::TcrConnection: "
@@ -1173,17 +1172,17 @@ std::shared_ptr<CacheableBytes> TcrConnection::readHandshakeRawData(
     return nullptr;
   }
   char* recvMessage;
-  GF_NEW(recvMessage, char[msgLength]);
+  _GEODE_NEW(recvMessage, char[msgLength]);
   if ((error = receiveData(recvMessage, msgLength, connectTimeout, false)) !=
       CONN_NOERR) {
     if (error & CONN_TIMEOUT) {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           TimeoutException("TcrConnection::TcrConnection: "
                            "Timeout in handshake"));
     } else {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           GeodeIOException("TcrConnection::TcrConnection: "
@@ -1275,18 +1274,18 @@ void TcrConnection::readHandShakeBytes(
     int numberOfBytes, std::chrono::microseconds connectTimeout) {
   ConnErrType error = CONN_NOERR;
   uint8_t* recvMessage;
-  GF_NEW(recvMessage, uint8_t[numberOfBytes]);
+  _GEODE_NEW(recvMessage, uint8_t[numberOfBytes]);
 
   if ((error = receiveData(reinterpret_cast<char*>(recvMessage), numberOfBytes,
                            connectTimeout, false)) != CONN_NOERR) {
     if (error & CONN_TIMEOUT) {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           TimeoutException("TcrConnection::TcrConnection: "
                            "Timeout in handshake"));
     } else {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           GeodeIOException("TcrConnection::TcrConnection: "
@@ -1294,25 +1293,25 @@ void TcrConnection::readHandShakeBytes(
     }
   }
 
-  GF_SAFE_DELETE_ARRAY(recvMessage);
+  _GEODE_SAFE_DELETE_ARRAY(recvMessage);
 }
 
 int32_t TcrConnection::readHandShakeInt(
     std::chrono::microseconds connectTimeout) {
   ConnErrType error = CONN_NOERR;
   uint8_t* recvMessage;
-  GF_NEW(recvMessage, uint8_t[4]);
+  _GEODE_NEW(recvMessage, uint8_t[4]);
 
   if ((error = receiveData(reinterpret_cast<char*>(recvMessage), 4,
                            connectTimeout, false)) != CONN_NOERR) {
     if (error & CONN_TIMEOUT) {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           TimeoutException("TcrConnection::TcrConnection: "
                            "Timeout in handshake"));
     } else {
-      GF_SAFE_DELETE_ARRAY(recvMessage);
+      _GEODE_SAFE_DELETE_ARRAY(recvMessage);
       GF_SAFE_DELETE_CON(m_conn);
       throwException(
           GeodeIOException("TcrConnection::TcrConnection: "
@@ -1324,7 +1323,7 @@ int32_t TcrConnection::readHandShakeInt(
       recvMessage, 4);
   int32_t val = di->readInt32();
 
-  GF_SAFE_DELETE_ARRAY(recvMessage);
+  _GEODE_SAFE_DELETE_ARRAY(recvMessage);
 
   return val;
 }
@@ -1469,7 +1468,7 @@ TcrConnection::~TcrConnection() {
 
   if (m_dh != nullptr) {
     m_dh->clearDhKeys();
-    GF_SAFE_DELETE(m_dh);
+    _GEODE_SAFE_DELETE(m_dh);
   }
 }
 
@@ -1505,3 +1504,7 @@ bool TcrConnection::setAndGetBeingUsed(volatile bool isBeingUsed,
     }
   }
 }
+
+}  // namespace client
+}  // namespace geode
+}  // namespace apache
diff --git a/cppcache/src/TcrConnection.hpp b/cppcache/src/TcrConnection.hpp
index 2b4e2b2..25577f5 100644
--- a/cppcache/src/TcrConnection.hpp
+++ b/cppcache/src/TcrConnection.hpp
@@ -25,7 +25,7 @@
 
 #include <ace/Semaphore.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/CacheableBuiltins.hpp>
 
@@ -84,7 +84,7 @@ class TcrEndpoint;
 class SystemProperties;
 class ThinClientPoolDM;
 class TcrConnectionManager;
-class CPPCACHE_EXPORT TcrConnection {
+class _GEODE_EXPORT TcrConnection {
  public:
   /** Create one connection, endpoint is in format of hostname:portno
    * It will do handshake with j-server. There're 2 types of handshakes:
diff --git a/cppcache/src/TcrConnectionManager.cpp b/cppcache/src/TcrConnectionManager.cpp
index 236ea1f..cb85fcc 100644
--- a/cppcache/src/TcrConnectionManager.cpp
+++ b/cppcache/src/TcrConnectionManager.cpp
@@ -165,7 +165,7 @@ void TcrConnectionManager::close() {
     m_failoverTask->stopNoblock();
     m_failoverSema.release();
     m_failoverTask->wait();
-    GF_SAFE_DELETE(m_failoverTask);
+    _GEODE_SAFE_DELETE(m_failoverTask);
   }
 
   auto cacheAttributes = m_cache->getAttributes();
@@ -180,7 +180,7 @@ void TcrConnectionManager::close() {
       m_redundancyTask->wait();
       // now stop cleanup task
       // stopCleanupTask();
-      GF_SAFE_DELETE(m_redundancyTask);
+      _GEODE_SAFE_DELETE(m_redundancyTask);
     }
 
     m_redundancyManager->close();
@@ -203,7 +203,7 @@ TcrConnectionManager::~TcrConnectionManager() {
     m_cleanupTask->wait();
     // Clean notification lists if something remains in there; see bug #250
     cleanNotificationLists();
-    GF_SAFE_DELETE(m_cleanupTask);
+    _GEODE_SAFE_DELETE(m_cleanupTask);
 
     // sanity cleanup of any remaining endpoints with warning; see bug #298
     //  cleanup of endpoints, when regions are destroyed via notification
@@ -221,7 +221,7 @@ TcrConnectionManager::~TcrConnectionManager() {
         TcrEndpoint *ep = (*iter).int_id_;
         LOGFINE("TCCM: forcing endpoint delete for %d in destructor",
                 ep->name().c_str());
-        GF_SAFE_DELETE(ep);
+        _GEODE_SAFE_DELETE(ep);
       }
     }
   }
@@ -332,7 +332,7 @@ bool TcrConnectionManager::removeRefToEndpoint(TcrEndpoint *ep,
     // this endpoint no longer used
     GF_R_ASSERT(0 == m_endpoints.unbind(ep->name(), ep));
     LOGFINE("delete endpoint %s", ep->name().c_str());
-    GF_SAFE_DELETE(ep);
+    _GEODE_SAFE_DELETE(ep);
     hasRemovedEndpoint = true;
   }
   return hasRemovedEndpoint;
@@ -575,8 +575,8 @@ void TcrConnectionManager::cleanNotificationLists() {
       notifyCleanupSema = m_notifyCleanupSemaList.get();
     }
     notifyReceiver->wait();
-    GF_SAFE_DELETE(notifyReceiver);
-    GF_SAFE_DELETE(notifyConnection);
+    _GEODE_SAFE_DELETE(notifyReceiver);
+    _GEODE_SAFE_DELETE(notifyConnection);
     notifyCleanupSema->release();
   }
 }
diff --git a/cppcache/src/TcrConnectionManager.hpp b/cppcache/src/TcrConnectionManager.hpp
index fea7fb7..e98bf5f 100644
--- a/cppcache/src/TcrConnectionManager.hpp
+++ b/cppcache/src/TcrConnectionManager.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "Task.hpp"
 #include <string>
 #include <ace/Recursive_Thread_Mutex.h>
@@ -51,7 +51,7 @@ class ThinClientRegion;
 /**
  * @brief transport data between caches
  */
-class CPPCACHE_EXPORT TcrConnectionManager {
+class _GEODE_EXPORT TcrConnectionManager {
  public:
   TcrConnectionManager(CacheImpl* cache);
   ~TcrConnectionManager();
diff --git a/cppcache/src/TcrDistributionManager.cpp b/cppcache/src/TcrDistributionManager.cpp
index 735dba6..3c6e832 100644
--- a/cppcache/src/TcrDistributionManager.cpp
+++ b/cppcache/src/TcrDistributionManager.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "TcrDistributionManager.hpp"
 #include "ThinClientRegion.hpp"
 #include "TcrEndpoint.hpp"
diff --git a/cppcache/src/TcrDistributionManager.hpp b/cppcache/src/TcrDistributionManager.hpp
index 010572a..b39927f 100644
--- a/cppcache/src/TcrDistributionManager.hpp
+++ b/cppcache/src/TcrDistributionManager.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "ThinClientDistributionManager.hpp"
 
 namespace apache {
@@ -31,7 +31,7 @@ class ThinClientRegion;
 /**
  * @brief Distribute data between caches
  */
-class CPPCACHE_EXPORT TcrDistributionManager
+class _GEODE_EXPORT TcrDistributionManager
     : public ThinClientDistributionManager {
  public:
   TcrDistributionManager(ThinClientRegion* region,
diff --git a/cppcache/src/TcrEndpoint.cpp b/cppcache/src/TcrEndpoint.cpp
index a475d75..791ca30 100644
--- a/cppcache/src/TcrEndpoint.cpp
+++ b/cppcache/src/TcrEndpoint.cpp
@@ -293,7 +293,7 @@ GfErrType TcrEndpoint::createNewConnection(
     }
   }
   if (err != GF_NOERR && newConn != nullptr) {
-    GF_SAFE_DELETE(newConn);
+    _GEODE_SAFE_DELETE(newConn);
   }
   return err;
 }
@@ -632,7 +632,7 @@ int TcrEndpoint::receiveNotification(volatile bool& isRunning) {
         LOGDEBUG("receive notification %d", msg->getMessageType());
 
         if (!isRunning) {
-          GF_SAFE_DELETE(msg);
+          _GEODE_SAFE_DELETE(msg);
           break;
         }
 
@@ -642,7 +642,7 @@ int TcrEndpoint::receiveNotification(volatile bool& isRunning) {
 
         // ignore some message types like REGISTER_INSTANTIATORS
         if (msg->shouldIgnore()) {
-          GF_SAFE_DELETE(msg);
+          _GEODE_SAFE_DELETE(msg);
           continue;
         }
 
@@ -660,7 +660,7 @@ int TcrEndpoint::receiveNotification(volatile bool& isRunning) {
               // checking
               LOGFINER("Endpoint %s dropping event for region %s",
                        m_name.c_str(), regionFullPath1.c_str());
-              GF_SAFE_DELETE(msg);
+              _GEODE_SAFE_DELETE(msg);
               continue;
             }
           }
@@ -671,7 +671,7 @@ int TcrEndpoint::receiveNotification(volatile bool& isRunning) {
           if (m_dupCount % 100 == 1) {
             LOGFINE("Dropped %dst duplicate notification message", m_dupCount);
           }
-          GF_SAFE_DELETE(msg);
+          _GEODE_SAFE_DELETE(msg);
           continue;
         }
 
@@ -679,7 +679,7 @@ int TcrEndpoint::receiveNotification(volatile bool& isRunning) {
           LOGFINE("Got a marker message on endpont %s", m_name.c_str());
           m_cacheImpl->processMarker();
           processMarker();
-          GF_SAFE_DELETE(msg);
+          _GEODE_SAFE_DELETE(msg);
         } else {
           if (!msg->hasCqPart())  // || msg->isInterestListPassed())
           {
@@ -730,13 +730,13 @@ int TcrEndpoint::receiveNotification(volatile bool& isRunning) {
       }
       break;
     } catch (const Exception& ex) {
-      GF_SAFE_DELETE(msg);
+      _GEODE_SAFE_DELETE(msg);
       LOGERROR(
           "Exception while receiving subscription event for endpoint %s:: %s: "
           "%s",
           m_name.c_str(), ex.getName().c_str(), ex.what());
     } catch (...) {
-      GF_SAFE_DELETE(msg);
+      _GEODE_SAFE_DELETE(msg);
       LOGERROR(
           "Unexpected exception while "
           "receiving subscription event from endpoint %s",
@@ -770,7 +770,7 @@ inline bool TcrEndpoint::handleIOException(const std::string& message,
                                            bool isBgThread) {
   int32_t lastError = ACE_OS::last_error();
   if (lastError == ECONNRESET || lastError == EPIPE) {
-    GF_SAFE_DELETE(conn);
+    _GEODE_SAFE_DELETE(conn);
   } else {
     closeConnection(conn);
   }
@@ -1226,7 +1226,7 @@ void TcrEndpoint::triggerRedundancyThread() {
 void TcrEndpoint::closeConnection(TcrConnection*& conn) {
   conn->close();
   m_ports.erase(conn->getPort());
-  GF_SAFE_DELETE(conn);
+  _GEODE_SAFE_DELETE(conn);
 }
 
 void TcrEndpoint::closeConnections() {
@@ -1289,8 +1289,8 @@ void TcrEndpoint::stopNotifyReceiverAndCleanup() {
     }
 
     if (!found) {
-      GF_SAFE_DELETE(m_notifyReceiver);
-      GF_SAFE_DELETE(m_notifyConnection);
+      _GEODE_SAFE_DELETE(m_notifyReceiver);
+      _GEODE_SAFE_DELETE(m_notifyConnection);
     }
   }
 
@@ -1305,7 +1305,7 @@ void TcrEndpoint::stopNotifyReceiverAndCleanup() {
       LOGFINER(
           "TcrEndpoint::stopNotifyReceiverAndCleanup: deleting old notify "
           "recievers.");
-      GF_SAFE_DELETE(*it);
+      _GEODE_SAFE_DELETE(*it);
     }
   }
 
@@ -1318,7 +1318,7 @@ void TcrEndpoint::stopNotifyReceiverAndCleanup() {
       LOGFINER(
           "TcrEndpoint::stopNotifyReceiverAndCleanup: deleting old notify "
           "connections.");
-      GF_SAFE_DELETE(*it);
+      _GEODE_SAFE_DELETE(*it);
     }
   }
 }
diff --git a/cppcache/src/TcrEndpoint.hpp b/cppcache/src/TcrEndpoint.hpp
index e6d1fc4..cf33cb1 100644
--- a/cppcache/src/TcrEndpoint.hpp
+++ b/cppcache/src/TcrEndpoint.hpp
@@ -27,13 +27,14 @@
 #include <ace/Recursive_Thread_Mutex.h>
 #include <ace/Semaphore.h>
 
-#include <geode/geode_globals.hpp>
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_globals.hpp>
+#include <geode/internal/geode_base.hpp>
 
 #include "FairQueue.hpp"
 #include "Set.hpp"
 #include "TcrConnection.hpp"
 #include "Task.hpp"
+#include "ErrType.hpp"
 
 namespace apache {
 namespace geode {
@@ -47,7 +48,7 @@ class ThinClientPoolHADM;
 class ThinClientPoolDM;
 class QueryService;
 
-class CPPCACHE_EXPORT TcrEndpoint {
+class _GEODE_EXPORT TcrEndpoint {
  public:
   TcrEndpoint(
       const std::string& name, CacheImpl* cacheImpl,
diff --git a/cppcache/src/TcrHADistributionManager.cpp b/cppcache/src/TcrHADistributionManager.cpp
index 923980d..321ac29 100644
--- a/cppcache/src/TcrHADistributionManager.cpp
+++ b/cppcache/src/TcrHADistributionManager.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "TcrHADistributionManager.hpp"
 #include <geode/ExceptionTypes.hpp>
 #include "TcrMessage.hpp"
diff --git a/cppcache/src/TcrHADistributionManager.hpp b/cppcache/src/TcrHADistributionManager.hpp
index b471f37..725d5ef 100644
--- a/cppcache/src/TcrHADistributionManager.hpp
+++ b/cppcache/src/TcrHADistributionManager.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_base.hpp>
 #include "ThinClientDistributionManager.hpp"
 #include <geode/CacheAttributes.hpp>
 #include "TcrEndpoint.hpp"
@@ -34,7 +34,7 @@ class ThinClientHARegion;
 /**
  * @brief Distribute data between caches
  */
-class CPPCACHE_EXPORT TcrHADistributionManager
+class _GEODE_EXPORT TcrHADistributionManager
     : public ThinClientDistributionManager {
  public:
   TcrHADistributionManager(ThinClientRegion* theRegion,
diff --git a/cppcache/src/TcrMessage.cpp b/cppcache/src/TcrMessage.cpp
index 7b7eb7a..8c7e94c 100644
--- a/cppcache/src/TcrMessage.cpp
+++ b/cppcache/src/TcrMessage.cpp
@@ -842,7 +842,7 @@ void TcrMessage::processChunk(const uint8_t* bytes, int32_t len,
                  TcrMessage::GET_ALL_DATA_ERROR == m_msgType) {
         if (bytes != nullptr) {
           chunkSecurityHeader(1, bytes, len, isLastChunkAndisSecurityHeader);
-          GF_SAFE_DELETE_ARRAY(bytes);
+          _GEODE_SAFE_DELETE_ARRAY(bytes);
         }
       }
       break;
@@ -860,7 +860,7 @@ void TcrMessage::processChunk(const uint8_t* bytes, int32_t len,
         // readSecureObjectPart(input, false, true,
         // isLastChunkAndisSecurityHeader );
         chunkSecurityHeader(1, bytes, len, isLastChunkAndisSecurityHeader);
-        GF_SAFE_DELETE_ARRAY(bytes);
+        _GEODE_SAFE_DELETE_ARRAY(bytes);
       }
       break;
     }
@@ -887,7 +887,7 @@ void TcrMessage::processChunk(const uint8_t* bytes, int32_t len,
     case TcrMessage::GET_ALL_DATA_ERROR: {
       chunkSecurityHeader(1, bytes, len, isLastChunkAndisSecurityHeader);
       if (bytes != nullptr) {
-        GF_SAFE_DELETE_ARRAY(bytes);
+        _GEODE_SAFE_DELETE_ARRAY(bytes);
       }
       // nothing else to done since this will be taken care of at higher level
       break;
@@ -895,7 +895,7 @@ void TcrMessage::processChunk(const uint8_t* bytes, int32_t len,
     default: {
       // TODO: how many parts what should we do here
       if (bytes != nullptr) {
-        GF_SAFE_DELETE_ARRAY(bytes);
+        _GEODE_SAFE_DELETE_ARRAY(bytes);
       } else {
         LOGWARN(
             "Got unhandled message type %d while processing response, possible "
@@ -1212,7 +1212,7 @@ void TcrMessage::handleByteArrayResponse(
 
       // read eventid part
       readEventIdPart(*input, false);
-      GF_SAFE_DELETE_ARRAY(regname);  // COVERITY ---> 30299 Resource leak
+      _GEODE_SAFE_DELETE_ARRAY(regname);  // COVERITY ---> 30299 Resource leak
 
       break;
     }
@@ -2822,13 +2822,13 @@ void TcrMessage::setData(const char* bytearray, int32_t len, uint16_t memId,
 }
 
 TcrMessage::~TcrMessage() {
-  GF_SAFE_DELETE(m_cqs);
+  _GEODE_SAFE_DELETE(m_cqs);
   /* adongre
    * CID 29167: Non-array delete for scalars (DELETE_ARRAY)
    * Coverity - II
    */
-  // GF_SAFE_DELETE( m_deltaBytes );
-  GF_SAFE_DELETE_ARRAY(m_deltaBytes);
+  // _GEODE_SAFE_DELETE( m_deltaBytes );
+  _GEODE_SAFE_DELETE_ARRAY(m_deltaBytes);
 }
 
 const std::string& TcrMessage::getRegionName() const { return m_regionName; }
diff --git a/cppcache/src/TcrMessage.hpp b/cppcache/src/TcrMessage.hpp
index 39a30e8..bb8de4d 100644
--- a/cppcache/src/TcrMessage.hpp
+++ b/cppcache/src/TcrMessage.hpp
@@ -27,7 +27,7 @@
 
 #include <ace/OS.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cacheable.hpp>
 #include <geode/CacheableKey.hpp>
 #include <geode/CacheableString.hpp>
@@ -56,7 +56,7 @@ class ThinClientBaseDM;
 class TcrMessageHelper;
 class TcrConnection;
 class TcrMessagePing;
-class CPPCACHE_EXPORT TcrMessage {
+class _GEODE_EXPORT TcrMessage {
  private:
   inline static void writeInt(uint8_t* buffer, uint16_t value);
   inline static void writeInt(uint8_t* buffer, uint32_t value);
diff --git a/cppcache/src/ThinClientBaseDM.cpp b/cppcache/src/ThinClientBaseDM.cpp
index 8fbf0a5..9e57689 100644
--- a/cppcache/src/ThinClientBaseDM.cpp
+++ b/cppcache/src/ThinClientBaseDM.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "ThinClientBaseDM.hpp"
 #include "ThinClientRegion.hpp"
 #include "TcrMessage.hpp"
@@ -209,7 +209,7 @@ void ThinClientBaseDM::queueChunk(TcrChunkedContext* chunk) {
     LOGDEBUG("ThinClientBaseDM::queueChunk2");
     // process in same thread if no chunk processor thread
     chunk->handleChunk(true);
-    GF_SAFE_DELETE(chunk);
+    _GEODE_SAFE_DELETE(chunk);
   } else if (!m_chunks.putUntil(chunk, timeout, 0)) {
     LOGDEBUG("ThinClientBaseDM::queueChunk3");
     // if put in queue fails due to whatever reason then process in same thread
@@ -218,7 +218,7 @@ void ThinClientBaseDM::queueChunk(TcrChunkedContext* chunk) {
         "unbounded size after waiting for %d secs",
         timeout);
     chunk->handleChunk(true);
-    GF_SAFE_DELETE(chunk);
+    _GEODE_SAFE_DELETE(chunk);
   } else {
     LOGDEBUG("Adding message to ThinClientBaseDM::queueChunk");
   }
@@ -233,7 +233,7 @@ int ThinClientBaseDM::processChunks(volatile bool& isRunning) {
     chunk = m_chunks.getUntil(0, 100000);
     if (chunk) {
       chunk->handleChunk(false);
-      GF_SAFE_DELETE(chunk);
+      _GEODE_SAFE_DELETE(chunk);
     }
   }
   LOGFINE("Ending chunk process thread for region %s",
@@ -257,7 +257,7 @@ void ThinClientBaseDM::stopChunkProcessor() {
   if (m_chunkProcessor != nullptr) {
     m_chunkProcessor->stop();
     m_chunks.close();
-    GF_SAFE_DELETE(m_chunkProcessor);
+    _GEODE_SAFE_DELETE(m_chunkProcessor);
   }
 }
 
diff --git a/cppcache/src/ThinClientBaseDM.hpp b/cppcache/src/ThinClientBaseDM.hpp
index 887a99e..63829bb 100644
--- a/cppcache/src/ThinClientBaseDM.hpp
+++ b/cppcache/src/ThinClientBaseDM.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "TcrConnectionManager.hpp"
 #include "TcrEndpoint.hpp"
 #include <vector>
diff --git a/cppcache/src/ThinClientCacheDistributionManager.cpp b/cppcache/src/ThinClientCacheDistributionManager.cpp
index 0f72732..b50490e 100644
--- a/cppcache/src/ThinClientCacheDistributionManager.cpp
+++ b/cppcache/src/ThinClientCacheDistributionManager.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "ThinClientBaseDM.hpp"
 #include "ThinClientCacheDistributionManager.hpp"
 #include "TcrMessage.hpp"
diff --git a/cppcache/src/ThinClientCacheDistributionManager.hpp b/cppcache/src/ThinClientCacheDistributionManager.hpp
index 0c6e804..b57ae1c 100644
--- a/cppcache/src/ThinClientCacheDistributionManager.hpp
+++ b/cppcache/src/ThinClientCacheDistributionManager.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <memory>
 #include "ThinClientDistributionManager.hpp"
 
@@ -33,7 +33,7 @@ namespace client {
 class TcrMessage;
 class TcrConnection;
 
-class CPPCACHE_EXPORT ThinClientCacheDistributionManager
+class _GEODE_EXPORT ThinClientCacheDistributionManager
     : public ThinClientDistributionManager {
  public:
   ThinClientCacheDistributionManager(TcrConnectionManager& connManager);
diff --git a/cppcache/src/ThinClientHARegion.cpp b/cppcache/src/ThinClientHARegion.cpp
index cafed6f..8a5a17d 100644
--- a/cppcache/src/ThinClientHARegion.cpp
+++ b/cppcache/src/ThinClientHARegion.cpp
@@ -79,7 +79,7 @@ void ThinClientHARegion::initTCR() {
       m_tcrdm->init();
     }
   } catch (const Exception& ex) {
-    GF_SAFE_DELETE(m_tcrdm);
+    _GEODE_SAFE_DELETE(m_tcrdm);
     LOGERROR(
         "ThinClientHARegion: failed to create a DistributionManager "
         "object due to: %s: %s",
diff --git a/cppcache/src/ThinClientHARegion.hpp b/cppcache/src/ThinClientHARegion.hpp
index 0d62e4f..b7b397e 100644
--- a/cppcache/src/ThinClientHARegion.hpp
+++ b/cppcache/src/ThinClientHARegion.hpp
@@ -41,7 +41,7 @@ namespace client {
  * send and invalidate methods.
  *
  */
-class CPPCACHE_EXPORT ThinClientHARegion : public ThinClientRegion {
+class _GEODE_EXPORT ThinClientHARegion : public ThinClientRegion {
  public:
   /**
    * @brief constructor/destructor
diff --git a/cppcache/src/ThinClientLocatorHelper.hpp b/cppcache/src/ThinClientLocatorHelper.hpp
index 36cf2dd..0e0157f 100644
--- a/cppcache/src/ThinClientLocatorHelper.hpp
+++ b/cppcache/src/ThinClientLocatorHelper.hpp
@@ -21,7 +21,7 @@
  */
 
 #include <string>
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include "TcrEndpoint.hpp"
 #include "ServerLocation.hpp"
 #include <set>
diff --git a/cppcache/src/ThinClientPoolDM.cpp b/cppcache/src/ThinClientPoolDM.cpp
index 61506c4..d2c9a85 100644
--- a/cppcache/src/ThinClientPoolDM.cpp
+++ b/cppcache/src/ThinClientPoolDM.cpp
@@ -739,7 +739,7 @@ void ThinClientPoolDM::stopPingThread() {
     m_pingTask->stopNoblock();
     m_pingSema.release();
     m_pingTask->wait();
-    GF_SAFE_DELETE(m_pingTask);
+    _GEODE_SAFE_DELETE(m_pingTask);
     if (m_pingTaskId >= 0) {
       m_connManager.getCacheImpl()->getExpiryTaskManager().cancelTask(
           m_pingTaskId);
@@ -753,7 +753,7 @@ void ThinClientPoolDM::stopUpdateLocatorListThread() {
     m_updateLocatorListTask->stopNoblock();
     m_updateLocatorListSema.release();
     m_updateLocatorListTask->wait();
-    GF_SAFE_DELETE(m_updateLocatorListTask);
+    _GEODE_SAFE_DELETE(m_updateLocatorListTask);
     if (m_updateLocatorListTaskId >= 0) {
       m_connManager.getCacheImpl()->getExpiryTaskManager().cancelTask(
           m_updateLocatorListTaskId);
@@ -767,7 +767,7 @@ void ThinClientPoolDM::stopCliCallbackThread() {
     m_cliCallbackTask->stopNoblock();
     m_cliCallbackSema.release();
     m_cliCallbackTask->wait();
-    GF_SAFE_DELETE(m_cliCallbackTask);
+    _GEODE_SAFE_DELETE(m_cliCallbackTask);
   }
 }
 
@@ -784,7 +784,7 @@ void ThinClientPoolDM::destroy(bool keepAlive) {
     LOGDEBUG("Closing PoolStatsSampler thread.");
     if (m_PoolStatsSampler != nullptr) {
       m_PoolStatsSampler->stop();
-      GF_SAFE_DELETE(m_PoolStatsSampler);
+      _GEODE_SAFE_DELETE(m_PoolStatsSampler);
     }
     LOGDEBUG("PoolStatsSampler thread closed .");
     stopCliCallbackThread();
@@ -793,7 +793,7 @@ void ThinClientPoolDM::destroy(bool keepAlive) {
       m_connManageTask->stopNoblock();
       m_connSema.release();
       m_connManageTask->wait();
-      GF_SAFE_DELETE(m_connManageTask);
+      _GEODE_SAFE_DELETE(m_connManageTask);
       if (m_connManageTaskId >= 0) {
         m_connManager.getCacheImpl()->getExpiryTaskManager().cancelTask(
             m_connManageTaskId);
@@ -820,7 +820,7 @@ void ThinClientPoolDM::destroy(bool keepAlive) {
       TcrEndpoint* ep = (*iter).int_id_;
       LOGFINE("ThinClientPoolDM: forcing endpoint delete for %d in destructor",
               ep->name().c_str());
-      GF_SAFE_DELETE(ep);
+      _GEODE_SAFE_DELETE(ep);
     }
 
     // Close Stats
@@ -831,7 +831,7 @@ void ThinClientPoolDM::destroy(bool keepAlive) {
         ->forceSample();
 
     if (m_clientMetadataService != nullptr) {
-      GF_SAFE_DELETE(m_clientMetadataService);
+      _GEODE_SAFE_DELETE(m_clientMetadataService);
     }
 
     m_connManager.getCacheImpl()->getPoolManager().removePool(
@@ -1700,7 +1700,7 @@ GfErrType ThinClientPoolDM::getConnectionToAnEndPoint(std::string epNameStr,
     LOGFINE(
         "ThinClientPoolDM::getConnectionToAEndPoint( ):Failed to connect to %s",
         theEP->name().c_str());
-    if (conn != nullptr) GF_SAFE_DELETE(conn);
+    if (conn != nullptr) _GEODE_SAFE_DELETE(conn);
   }
 
   return error;
@@ -1749,7 +1749,7 @@ GfErrType ThinClientPoolDM::createPoolConnectionToAEndPoint(
                                      false, true, appThreadrequest);
   if (conn == nullptr || error != GF_NOERR) {
     LOGFINE("2Failed to connect to %s", theEP->name().c_str());
-    if (conn != nullptr) GF_SAFE_DELETE(conn);
+    if (conn != nullptr) _GEODE_SAFE_DELETE(conn);
   } else {
     theEP->setConnected();
     ++m_poolSize;
@@ -1837,7 +1837,7 @@ GfErrType ThinClientPoolDM::createPoolConnection(
       LOGFINE("1Failed to connect to %s", epNameStr.c_str());
       excludeServers.insert(ServerLocation(ep->name()));
       if (conn != nullptr) {
-        GF_SAFE_DELETE(conn);
+        _GEODE_SAFE_DELETE(conn);
       }
       if (ThinClientBaseDM::isFatalError(error)) {
         // save this error for later to override the
@@ -1937,7 +1937,7 @@ GfErrType ThinClientPoolDM::sendRequestToEP(const TcrMessage& request,
     if (conn == nullptr || error != GF_NOERR) {
       LOGFINE("3Failed to connect to %s", currentEndpoint->name().c_str());
       if (conn != nullptr) {
-        GF_SAFE_DELETE(conn);
+        _GEODE_SAFE_DELETE(conn);
       }
       if (putConnInPool) {
         ACE_Guard<ACE_Recursive_Thread_Mutex> guard(getPoolLock());
@@ -2018,7 +2018,7 @@ GfErrType ThinClientPoolDM::sendRequestToEP(const TcrMessage& request,
       } else {
         if (isTmpConnectedStatus) currentEndpoint->setConnectionStatus(false);
         conn->close();
-        GF_SAFE_DELETE(conn);
+        _GEODE_SAFE_DELETE(conn);
       }
     } else if (error != GF_NOERR) {
       currentEndpoint->setConnectionStatus(false);
@@ -2264,7 +2264,7 @@ void ThinClientPoolDM::removeEPConnections(TcrEndpoint* theEP) {
       m_queue.push_front(curConn);
     } else {
       curConn->close();
-      GF_SAFE_DELETE(curConn);
+      _GEODE_SAFE_DELETE(curConn);
       numConn++;
     }
   }
@@ -2284,7 +2284,7 @@ TcrConnection* ThinClientPoolDM::getNoGetLock(
       if (returnT) {
         if (excludeConnection(returnT, excludeServers)) {
           returnT->close();
-          GF_SAFE_DELETE(returnT);
+          _GEODE_SAFE_DELETE(returnT);
           removeEPConnections(1, false);
         } else {
           break;
diff --git a/cppcache/src/ThinClientPoolDM.hpp b/cppcache/src/ThinClientPoolDM.hpp
index 5ab3e83..37d748b 100644
--- a/cppcache/src/ThinClientPoolDM.hpp
+++ b/cppcache/src/ThinClientPoolDM.hpp
@@ -120,10 +120,10 @@ class ThinClientPoolDM
 
   virtual ~ThinClientPoolDM() {
     destroy();
-    GF_SAFE_DELETE(m_locHelper);
-    GF_SAFE_DELETE(m_stats);
-    GF_SAFE_DELETE(m_clientMetadataService);
-    GF_SAFE_DELETE(m_manager);
+    _GEODE_SAFE_DELETE(m_locHelper);
+    _GEODE_SAFE_DELETE(m_stats);
+    _GEODE_SAFE_DELETE(m_clientMetadataService);
+    _GEODE_SAFE_DELETE(m_manager);
   }
   // void updateQueue(const char* regionPath) ;
   ClientProxyMembershipID* getMembershipId() { return m_memId.get(); }
diff --git a/cppcache/src/ThinClientPoolHADM.cpp b/cppcache/src/ThinClientPoolHADM.cpp
index a7837fc..eda5c8b 100644
--- a/cppcache/src/ThinClientPoolHADM.cpp
+++ b/cppcache/src/ThinClientPoolHADM.cpp
@@ -196,7 +196,7 @@ void ThinClientPoolHADM::sendNotificationCloseMsgs() {
     m_redundancyTask->stopNoblock();
     m_redundancySema.release();
     m_redundancyTask->wait();
-    GF_SAFE_DELETE(m_redundancyTask);
+    _GEODE_SAFE_DELETE(m_redundancyTask);
     m_redundancyManager->sendNotificationCloseMsgs();
   }
 }
diff --git a/cppcache/src/ThinClientRedundancyManager.cpp b/cppcache/src/ThinClientRedundancyManager.cpp
index d7852b3..2f45256 100644
--- a/cppcache/src/ThinClientRedundancyManager.cpp
+++ b/cppcache/src/ThinClientRedundancyManager.cpp
@@ -721,7 +721,7 @@ void ThinClientRedundancyManager::close() {
     m_periodicAckTask->stopNoblock();
     m_periodicAckSema.release();
     m_periodicAckTask->wait();
-    GF_SAFE_DELETE(m_periodicAckTask);
+    _GEODE_SAFE_DELETE(m_periodicAckTask);
   }
 
   ACE_Guard<ACE_Recursive_Thread_Mutex> guard(m_redundantEndpointsLock);
diff --git a/cppcache/src/ThinClientRegion.cpp b/cppcache/src/ThinClientRegion.cpp
index a6c19ad..6efa02c 100644
--- a/cppcache/src/ThinClientRegion.cpp
+++ b/cppcache/src/ThinClientRegion.cpp
@@ -386,7 +386,7 @@ void ThinClientRegion::initTCR() {
         new TcrDistributionManager(this, m_cacheImpl->tcrConnectionManager());
     m_tcrdm->init();
   } catch (const Exception& ex) {
-    GF_SAFE_DELETE(m_tcrdm);
+    _GEODE_SAFE_DELETE(m_tcrdm);
     LOGERROR("Exception while initializing region: %s: %s",
              ex.getName().c_str(), ex.what());
     throw;
@@ -2818,7 +2818,7 @@ void ThinClientRegion::receiveNotification(TcrMessage* msg) {
     TryReadGuard guard(m_rwLock, m_destroyPending);
     if (m_destroyPending) {
       if (msg != TcrMessage::getAllEPDisMess()) {
-        GF_SAFE_DELETE(msg);
+        _GEODE_SAFE_DELETE(msg);
       }
       return;
     }
@@ -2832,7 +2832,7 @@ void ThinClientRegion::receiveNotification(TcrMessage* msg) {
   }
 
   m_notificationSema.release();
-  if (TcrMessage::getAllEPDisMess() != msg) GF_SAFE_DELETE(msg);
+  if (TcrMessage::getAllEPDisMess() != msg) _GEODE_SAFE_DELETE(msg);
 }
 
 void ThinClientRegion::localInvalidateRegion_internal() {
@@ -2958,7 +2958,7 @@ ThinClientRegion::~ThinClientRegion() {
   if (!m_destroyPending) {
     release(false);
   }
-  GF_SAFE_DELETE(m_tcrdm);
+  _GEODE_SAFE_DELETE(m_tcrdm);
 }
 
 void ThinClientRegion::acquireGlobals(bool isFailover) {
diff --git a/cppcache/src/ThinClientRegion.hpp b/cppcache/src/ThinClientRegion.hpp
index d454e18..cd63bed 100644
--- a/cppcache/src/ThinClientRegion.hpp
+++ b/cppcache/src/ThinClientRegion.hpp
@@ -53,7 +53,7 @@ class ThinClientBaseDM;
  *
  */
 
-class CPPCACHE_EXPORT ThinClientRegion : public LocalRegion {
+class _GEODE_EXPORT ThinClientRegion : public LocalRegion {
  public:
   /**
    * @brief constructor/initializer/destructor
diff --git a/cppcache/src/ThinClientStickyManager.cpp b/cppcache/src/ThinClientStickyManager.cpp
index d88af0e..7aaa49c 100644
--- a/cppcache/src/ThinClientStickyManager.cpp
+++ b/cppcache/src/ThinClientStickyManager.cpp
@@ -143,7 +143,7 @@ void ThinClientStickyManager::cleanStaleStickyConnection() {
         *conn = nullptr;
         m_dm->put(temp, false);
         temp1->close();
-        GF_SAFE_DELETE(temp1);
+        _GEODE_SAFE_DELETE(temp1);
         m_dm->removeEPConnections(1, false);
         LOGDEBUG("Replaced a sticky connection");
       } else {
@@ -162,7 +162,7 @@ void ThinClientStickyManager::closeAllStickyConnections() {
     TcrConnection** tempConn = *it;
     if (*tempConn) {
       (*tempConn)->close();
-      GF_SAFE_DELETE(*tempConn);
+      _GEODE_SAFE_DELETE(*tempConn);
       m_dm->removeEPConnections(1, false);
     }
   }
diff --git a/cppcache/src/TimeoutTimer.hpp b/cppcache/src/TimeoutTimer.hpp
index 48c68ca..efa5884 100644
--- a/cppcache/src/TimeoutTimer.hpp
+++ b/cppcache/src/TimeoutTimer.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include <ace/Condition_Recursive_Thread_Mutex.h>
 #include <ace/Condition_T.h>
@@ -32,7 +32,7 @@ namespace apache {
 namespace geode {
 namespace client {
 
-class CPPCACHE_EXPORT TimeoutTimer {
+class _GEODE_EXPORT TimeoutTimer {
  private:
   ACE_Recursive_Thread_Mutex m_mutex;
   ACE_Condition<ACE_Recursive_Thread_Mutex> m_cond;
diff --git a/cppcache/src/TombstoneExpiryHandler.hpp b/cppcache/src/TombstoneExpiryHandler.hpp
index 45e69ee..d699b0d 100644
--- a/cppcache/src/TombstoneExpiryHandler.hpp
+++ b/cppcache/src/TombstoneExpiryHandler.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Region.hpp>
 #include <geode/ExpirationAction.hpp>
 #include "RegionInternal.hpp"
@@ -40,7 +40,7 @@ namespace client {
  * when a tombstone expires.
  *
  */
-class CPPCACHE_EXPORT TombstoneExpiryHandler : public ACE_Event_Handler {
+class _GEODE_EXPORT TombstoneExpiryHandler : public ACE_Event_Handler {
  public:
   /**
    * Constructor
diff --git a/cppcache/src/TransactionalOperation.hpp b/cppcache/src/TransactionalOperation.hpp
index c27c65a..7146f9f 100644
--- a/cppcache/src/TransactionalOperation.hpp
+++ b/cppcache/src/TransactionalOperation.hpp
@@ -26,7 +26,7 @@
  *      Author: ankurs
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Cacheable.hpp>
 #include <vector>
 namespace apache {
diff --git a/cppcache/src/UserAttributes.cpp b/cppcache/src/UserAttributes.cpp
index c9deada..7d12710 100644
--- a/cppcache/src/UserAttributes.cpp
+++ b/cppcache/src/UserAttributes.cpp
@@ -37,7 +37,7 @@ UserAttributes::~UserAttributes() {
   for (it = m_connectionAttr.begin(); it != m_connectionAttr.end(); it++) {
     UserConnectionAttributes* uca = (*it).second;
     if (uca != nullptr) {
-      GF_SAFE_DELETE(uca);
+      _GEODE_SAFE_DELETE(uca);
     }
   }
 }
@@ -72,7 +72,7 @@ void UserAttributes::unAuthenticateEP(TcrEndpoint* endpoint) {
   UserConnectionAttributes* uca = m_connectionAttr[endpoint->name()];
   if (uca != nullptr) {
     m_connectionAttr.erase(endpoint->name());
-    GF_SAFE_DELETE(uca);
+    _GEODE_SAFE_DELETE(uca);
   }
   /*for( it = m_connectionAttr.begin(); it != m_connectionAttr.end(); it++ )
   {
diff --git a/cppcache/src/UserAttributes.hpp b/cppcache/src/UserAttributes.hpp
index 586c721..da16951 100644
--- a/cppcache/src/UserAttributes.hpp
+++ b/cppcache/src/UserAttributes.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Properties.hpp>
 #include "TcrEndpoint.hpp"
 #include <ace/TSS_T.h>
@@ -68,7 +68,7 @@ class UserConnectionAttributes {
   // UserConnectionAttributes & operator =(const UserConnectionAttributes &);
 };
 
-class CPPCACHE_EXPORT UserAttributes {
+class _GEODE_EXPORT UserAttributes {
   // TODO: need to add lock here so that user should not be authenticated at two
   // servers
  public:
diff --git a/cppcache/src/Utils.hpp b/cppcache/src/Utils.hpp
index a0026fc..03d3cc8 100644
--- a/cppcache/src/Utils.hpp
+++ b/cppcache/src/Utils.hpp
@@ -34,8 +34,8 @@
 #include <memory>
 #include <chrono>
 
-#include <geode/geode_globals.hpp>
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_globals.hpp>
+#include <geode/internal/geode_base.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/CacheableString.hpp>
 #include <geode/DataOutput.hpp>
@@ -55,7 +55,7 @@ extern "C" {
 namespace apache {
 namespace geode {
 namespace client {
-class CPPCACHE_EXPORT Utils {
+class _GEODE_EXPORT Utils {
   /**
    * utilities
    *
diff --git a/cppcache/src/VersionStamp.hpp b/cppcache/src/VersionStamp.hpp
index 3cd2080..91b8e6d 100644
--- a/cppcache/src/VersionStamp.hpp
+++ b/cppcache/src/VersionStamp.hpp
@@ -1,8 +1,3 @@
-#pragma once
-
-#ifndef GEODE_VERSIONSTAMP_H_
-#define GEODE_VERSIONSTAMP_H_
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -20,10 +15,18 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#pragma once
+
+#ifndef GEODE_VERSIONSTAMP_H_
+#define GEODE_VERSIONSTAMP_H_
+
 #include <memory>
+
+#include <geode/internal/geode_globals.hpp>
+
 #include "ClientProxyMembershipID.hpp"
 #include "VersionTag.hpp"
+#include "ErrType.hpp"
 
 namespace apache {
 namespace geode {
@@ -31,7 +34,7 @@ namespace client {
 /**
  * @brief This class encapsulates Version Stamp for map entries.
  */
-class CPPCACHE_EXPORT VersionStamp {
+class _GEODE_EXPORT VersionStamp {
  public:
   VersionStamp()
       : m_memberID(0),
diff --git a/cppcache/src/VersionedCacheableObjectPartList.cpp b/cppcache/src/VersionedCacheableObjectPartList.cpp
index 408152d..bf367eb 100644
--- a/cppcache/src/VersionedCacheableObjectPartList.cpp
+++ b/cppcache/src/VersionedCacheableObjectPartList.cpp
@@ -74,7 +74,7 @@ void VersionedCacheableObjectPartList::readObjectPart(
      * "apache::geode::client::DataInput::readBytes(unsigned char **, int *)" on
      * "bytes".
      */
-    GF_SAFE_DELETE_ARRAY(bytes);
+    _GEODE_SAFE_DELETE_ARRAY(bytes);
 
   } else {
     // set nullptr to indicate that there is no exception for the key on this
diff --git a/cppcache/src/VersionedCacheableObjectPartList.hpp b/cppcache/src/VersionedCacheableObjectPartList.hpp
index 7f01e28..8ef29ea 100644
--- a/cppcache/src/VersionedCacheableObjectPartList.hpp
+++ b/cppcache/src/VersionedCacheableObjectPartList.hpp
@@ -75,7 +75,7 @@ class VersionedCacheableObjectPartList : public CacheableObjectPartList {
         m_regionIsVersioned = false;
         m_serializeValues = false;
         m_endpointMemId = 0;
-        GF_NEW(m_tempKeys, std::vector<std::shared_ptr<CacheableKey>> );
+        _GEODE_NEW(m_tempKeys, std::vector<std::shared_ptr<CacheableKey>> );
   }*/
 
  public:
diff --git a/cppcache/src/config.h.in b/cppcache/src/config.h.in
index f8b5308..c6cea5c 100644
--- a/cppcache/src/config.h.in
+++ b/cppcache/src/config.h.in
@@ -15,16 +15,21 @@
  * limitations under the License.
  */
 
+#pragma once
+
+#ifndef GEODE_CONFIG_H_
+#define GEODE_CONFIG_H_
+
 #cmakedefine HAVE_SYS_MOUNT_H
 
 #cmakedefine HAVE_SIGSTKFLT
 #cmakedefine HAVE_ACE_Select_Reactor
 
 // TODO replace with better CMake checks
-//TODO already defined #cmakedefine _LINUX
+#cmakedefine _LINUX
 #cmakedefine _MACOSX
 //TODO already defined #cmakedefine _WIN32
-//TODO already defined #cmakedefine _SOLARIS
+#cmakedefine _SOLARIS
 
 #define PRODUCT_VENDOR "@PRODUCT_VENDOR@"
 #define PRODUCT_VENDOR_NAME "@PRODUCT_VENDOR_NAME@"
@@ -35,3 +40,5 @@
 
 // TODO relace with CMake checks
 #define WITH_ACE_Select_Reactor 1
+
+#endif  // GEODE_CONFIG_H_
diff --git a/cppcache/src/dllmain.cpp b/cppcache/src/dllmain.cpp
index 13d62b8..16d40a6 100644
--- a/cppcache/src/dllmain.cpp
+++ b/cppcache/src/dllmain.cpp
@@ -62,7 +62,7 @@ BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call,
   return TRUE;
 }
 
-LIBEXP void DllMainGetPath(char *result, int maxLen) {
+_GEODE_LIBEXP void DllMainGetPath(char *result, int maxLen) {
   if (!initgflibDone) {
     result[0] = '\0';
     return;
diff --git a/cppcache/src/statistics/AtomicStatisticsImpl.cpp b/cppcache/src/statistics/AtomicStatisticsImpl.cpp
index 2c6522c..77fe00a 100644
--- a/cppcache/src/statistics/AtomicStatisticsImpl.cpp
+++ b/cppcache/src/statistics/AtomicStatisticsImpl.cpp
@@ -20,7 +20,7 @@
 
 #include <ace/OS_NS_stdio.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "AtomicStatisticsImpl.hpp"
 #include "StatisticsTypeImpl.hpp"
diff --git a/cppcache/src/statistics/AtomicStatisticsImpl.hpp b/cppcache/src/statistics/AtomicStatisticsImpl.hpp
index bc5021f..b63a247 100644
--- a/cppcache/src/statistics/AtomicStatisticsImpl.hpp
+++ b/cppcache/src/statistics/AtomicStatisticsImpl.hpp
@@ -23,7 +23,7 @@
 #include <atomic>
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "Statistics.hpp"
 #include "StatisticsTypeImpl.hpp"
diff --git a/cppcache/src/statistics/GeodeStatisticsFactory.cpp b/cppcache/src/statistics/GeodeStatisticsFactory.cpp
index 6116cd1..ebad568 100644
--- a/cppcache/src/statistics/GeodeStatisticsFactory.cpp
+++ b/cppcache/src/statistics/GeodeStatisticsFactory.cpp
@@ -23,7 +23,7 @@
 #include <ace/Thread_Mutex.h>
 #include <ace/Guard_T.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Exception.hpp>
 
 #include "GeodeStatisticsFactory.hpp"
diff --git a/cppcache/src/statistics/GeodeStatisticsFactory.hpp b/cppcache/src/statistics/GeodeStatisticsFactory.hpp
index 60448d9..f81e2ab 100644
--- a/cppcache/src/statistics/GeodeStatisticsFactory.hpp
+++ b/cppcache/src/statistics/GeodeStatisticsFactory.hpp
@@ -25,7 +25,7 @@
 #include <ace/Recursive_Thread_Mutex.h>
 #include <ace/Map_Manager.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 
 #include "StatisticsFactory.hpp"
diff --git a/cppcache/src/statistics/HostStatHelper.cpp b/cppcache/src/statistics/HostStatHelper.cpp
index 7694c9a..65e05b7 100644
--- a/cppcache/src/statistics/HostStatHelper.cpp
+++ b/cppcache/src/statistics/HostStatHelper.cpp
@@ -17,7 +17,7 @@
 
 #include <ace/OS_NS_sys_utsname.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "config.h"
 #include "HostStatHelper.hpp"
diff --git a/cppcache/src/statistics/HostStatHelper.hpp b/cppcache/src/statistics/HostStatHelper.hpp
index 2faba49..e4bbe29 100644
--- a/cppcache/src/statistics/HostStatHelper.hpp
+++ b/cppcache/src/statistics/HostStatHelper.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "StatisticDescriptorImpl.hpp"
 #include "StatisticsType.hpp"
@@ -54,7 +54,7 @@ namespace statistics {
  * accessed by calling {@link #getInstance()}.
  */
 
-class CPPCACHE_EXPORT HostStatHelper {
+class _GEODE_EXPORT HostStatHelper {
  private:
   static int32_t PROCESS_STAT_FLAG;
 
diff --git a/cppcache/src/statistics/HostStatHelperLinux.cpp b/cppcache/src/statistics/HostStatHelperLinux.cpp
index 971c65c..acf6d25 100644
--- a/cppcache/src/statistics/HostStatHelperLinux.cpp
+++ b/cppcache/src/statistics/HostStatHelperLinux.cpp
@@ -15,15 +15,21 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include "config.h"
+
 #if defined(_LINUX)
 
+#define __STDC_FORMAT_MACROS
+#include <inttypes.h>
+
+#include <glob.h>
+
 #include <ace/OS_NS_sys_utsname.h>
 #include <ace/OS_NS_errno.h>
-#include <glob.h>
+#include <ace/OS.h>
+
 #include "HostStatHelperLinux.hpp"
 #include "LinuxProcessStats.hpp"
-#include <ace/OS.h>
 
 using namespace apache::geode::statistics;
 
diff --git a/cppcache/src/statistics/HostStatHelperLinux.hpp b/cppcache/src/statistics/HostStatHelperLinux.hpp
index abf2257..4bed14f 100644
--- a/cppcache/src/statistics/HostStatHelperLinux.hpp
+++ b/cppcache/src/statistics/HostStatHelperLinux.hpp
@@ -1,8 +1,3 @@
-#pragma once
-
-#ifndef GEODE_STATISTICS_HOSTSTATHELPERLINUX_H_
-#define GEODE_STATISTICS_HOSTSTATHELPERLINUX_H_
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -20,14 +15,25 @@
  * limitations under the License.
  */
 
+#pragma once
+
+#ifndef GEODE_STATISTICS_HOSTSTATHELPERLINUX_H_
+#define GEODE_STATISTICS_HOSTSTATHELPERLINUX_H_
+
+#include "config.h"
+
 #if defined(_LINUX)
-#include <geode/geode_globals.hpp>
+
 #include <string>
+
 #include <sys/sysinfo.h>
+
+#include <geode/internal/geode_globals.hpp>
+
 #include "ProcessStats.hpp"
 
 /** @file
-*/
+ */
 
 namespace apache {
 namespace geode {
@@ -46,7 +52,7 @@ class HostStatHelperLinux {
  private:
   static uint8_t m_logStatErrorCountDown;
 };
-}  // namespace client
+}  // namespace statistics
 }  // namespace geode
 }  // namespace apache
 
diff --git a/cppcache/src/statistics/HostStatHelperNull.cpp b/cppcache/src/statistics/HostStatHelperNull.cpp
index 6e08077..6ef35ef 100644
--- a/cppcache/src/statistics/HostStatHelperNull.cpp
+++ b/cppcache/src/statistics/HostStatHelperNull.cpp
@@ -15,4 +15,4 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
diff --git a/cppcache/src/statistics/HostStatHelperNull.hpp b/cppcache/src/statistics/HostStatHelperNull.hpp
index 5d329e8..41c1fc7 100644
--- a/cppcache/src/statistics/HostStatHelperNull.hpp
+++ b/cppcache/src/statistics/HostStatHelperNull.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 /** @file
  */
diff --git a/cppcache/src/statistics/HostStatHelperSolaris.cpp b/cppcache/src/statistics/HostStatHelperSolaris.cpp
index b2df4a1..e9e327b 100644
--- a/cppcache/src/statistics/HostStatHelperSolaris.cpp
+++ b/cppcache/src/statistics/HostStatHelperSolaris.cpp
@@ -15,12 +15,10 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include "config.h"
 
 #if defined(_SOLARIS)
-#include <ace/OS_NS_sys_utsname.h>
-#include <ace/OS_NS_errno.h>
-#include "HostStatHelperSolaris.hpp"
+
 #include <procfs.h>
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -30,9 +28,16 @@
 #include <sys/proc.h>
 #include <sys/kstat.h>
 #include <glob.h>
+
+#include <ace/OS_NS_sys_utsname.h>
+#include <ace/OS_NS_errno.h>
+#include <ace/OS.h>
+
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
+
+#include "HostStatHelperSolaris.hpp"
 #include "SolarisProcessStats.hpp"
-#include <ace/OS.h>
 
 using namespace apache::geode::statistics;
 
diff --git a/cppcache/src/statistics/HostStatHelperSolaris.hpp b/cppcache/src/statistics/HostStatHelperSolaris.hpp
index 6da1ed8..ebf6d72 100644
--- a/cppcache/src/statistics/HostStatHelperSolaris.hpp
+++ b/cppcache/src/statistics/HostStatHelperSolaris.hpp
@@ -1,8 +1,3 @@
-#pragma once
-
-#ifndef GEODE_STATISTICS_HOSTSTATHELPERSOLARIS_H_
-#define GEODE_STATISTICS_HOSTSTATHELPERSOLARIS_H_
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -20,25 +15,35 @@
  * limitations under the License.
  */
 
+#pragma once
+
+#ifndef GEODE_STATISTICS_HOSTSTATHELPERSOLARIS_H_
+#define GEODE_STATISTICS_HOSTSTATHELPERSOLARIS_H_
+
+#include "config.h"
+
 #if defined(_SOLARIS)
-#include <geode/geode_globals.hpp>
+
 #include <string>
 #include <sys/sysinfo.h>
-#include "ProcessStats.hpp"
 #include <kstat.h>
 
+#include <geode/internal/geode_globals.hpp>
+
+#include "ProcessStats.hpp"
+
 /*
-  * CPU_USAGE_STAT_THRESHOLD sets how much time must pass between samples
-  * before a new cpu utilization is calculated.
-  * Units are in 100ths of a second.
-  * if set too low you will get divide by zero overflows or scewed data
-  * due to rounding errors.
-  * This is likely unnecesary with our stat sampling interval being 1 second.
-*/
+ * CPU_USAGE_STAT_THRESHOLD sets how much time must pass between samples
+ * before a new cpu utilization is calculated.
+ * Units are in 100ths of a second.
+ * if set too low you will get divide by zero overflows or scewed data
+ * due to rounding errors.
+ * This is likely unnecesary with our stat sampling interval being 1 second.
+ */
 #define CPU_USAGE_STAT_THRESHOLD 10
 
 /** @file
-*/
+ */
 
 namespace apache {
 namespace geode {
@@ -62,7 +67,7 @@ class HostStatHelperSolaris {
   static bool m_initialized;
   static void getKernelStats(uint32_t*);
 };
-}  // namespace client
+}  // namespace statistics
 }  // namespace geode
 }  // namespace apache
 
diff --git a/cppcache/src/statistics/HostStatHelperWin.cpp b/cppcache/src/statistics/HostStatHelperWin.cpp
index 4e323b1..573e124 100644
--- a/cppcache/src/statistics/HostStatHelperWin.cpp
+++ b/cppcache/src/statistics/HostStatHelperWin.cpp
@@ -16,7 +16,7 @@
  */
 
 #include <ace/OS.h>
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "HostStatHelperWin.hpp"
 
diff --git a/cppcache/src/statistics/HostStatHelperWin.hpp b/cppcache/src/statistics/HostStatHelperWin.hpp
index 83815b7..bd308dc 100644
--- a/cppcache/src/statistics/HostStatHelperWin.hpp
+++ b/cppcache/src/statistics/HostStatHelperWin.hpp
@@ -22,7 +22,7 @@
 
 #if defined(_WIN32)
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <string>
 #include <Windows.h>
 #include <WinPerf.h>
@@ -33,7 +33,7 @@
 #include "ProcessStats.hpp"
 
 /** @file
-*/
+ */
 
 namespace apache {
 namespace geode {
@@ -261,11 +261,11 @@ class HostStatHelperWin {
   static int32_t getPid(int32_t pidCtrOffset, PPERF_COUNTER_BLOCK PerfCntrBlk);
 
   static uint32_t getInt32Value(PPERF_COUNTER_DEFINITION PerfCntr,
-                              PPERF_COUNTER_BLOCK PerfCntrBlk);
+                                PPERF_COUNTER_BLOCK PerfCntrBlk);
 
   static int64_t getInt64Value(PPERF_COUNTER_DEFINITION PerfCntr,
-                             PPERF_COUNTER_BLOCK PerfCntrBlk,
-                             bool convertMS = true);
+                               PPERF_COUNTER_BLOCK PerfCntrBlk,
+                               bool convertMS = true);
 
   static PPERF_OBJECT_TYPE FirstObject(PPERF_DATA_BLOCK PerfData);
 
@@ -296,7 +296,7 @@ class HostStatHelperWin {
 
 };  // class
 
-}  // namespace client
+}  // namespace statistics
 }  // namespace geode
 }  // namespace apache
 
diff --git a/cppcache/src/statistics/HostStatSampler.cpp b/cppcache/src/statistics/HostStatSampler.cpp
index 54848df..5064684 100644
--- a/cppcache/src/statistics/HostStatSampler.cpp
+++ b/cppcache/src/statistics/HostStatSampler.cpp
@@ -29,7 +29,7 @@
 #include <ace/Dirent_Selector.h>
 #include <ace/OS_NS_sys_stat.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/DistributedSystem.hpp>
 #include <geode/SystemProperties.hpp>
 
diff --git a/cppcache/src/statistics/HostStatSampler.hpp b/cppcache/src/statistics/HostStatSampler.hpp
index 306c412..b120ac4 100644
--- a/cppcache/src/statistics/HostStatSampler.hpp
+++ b/cppcache/src/statistics/HostStatSampler.hpp
@@ -27,7 +27,7 @@
 #include <ace/Task.h>
 #include <ace/Recursive_Thread_Mutex.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "Statistics.hpp"
 #include "StatisticDescriptor.hpp"
@@ -77,9 +77,9 @@ class StatisticsManager;
  * FIX : Make the class NonCopyable
  */
 
-class CPPCACHE_EXPORT HostStatSampler : public ACE_Task_Base,
-                                        private NonCopyable,
-                                        private NonAssignable {
+class _GEODE_EXPORT HostStatSampler : public ACE_Task_Base,
+                                      private NonCopyable,
+                                      private NonAssignable {
  public:
   /*
    * Constructor:
diff --git a/cppcache/src/statistics/LinuxProcessStats.cpp b/cppcache/src/statistics/LinuxProcessStats.cpp
index d479e43..22a401b 100644
--- a/cppcache/src/statistics/LinuxProcessStats.cpp
+++ b/cppcache/src/statistics/LinuxProcessStats.cpp
@@ -18,11 +18,12 @@
 #include <ace/Thread_Mutex.h>
 #include <ace/Singleton.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "LinuxProcessStats.hpp"
 #include "HostStatHelperLinux.hpp"
 #include "../Assert.hpp"
+#include "config.h"
 
 namespace apache {
 namespace geode {
diff --git a/cppcache/src/statistics/LinuxProcessStats.hpp b/cppcache/src/statistics/LinuxProcessStats.hpp
index 4649b08..1900623 100644
--- a/cppcache/src/statistics/LinuxProcessStats.hpp
+++ b/cppcache/src/statistics/LinuxProcessStats.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_STATISTICS_LINUXPROCESSSTATS_H_
 #define GEODE_STATISTICS_LINUXPROCESSSTATS_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "Statistics.hpp"
 #include "StatisticsType.hpp"
@@ -28,6 +28,7 @@
 #include "ProcessStats.hpp"
 #include "HostStatHelper.hpp"
 #include "GeodeStatisticsFactory.hpp"
+#include "config.h"
 
 using namespace apache::geode::client;
 
@@ -43,7 +44,7 @@ namespace statistics {
  *
  */
 
-class CPPCACHE_EXPORT LinuxProcessStats : public ProcessStats {
+class _GEODE_EXPORT LinuxProcessStats : public ProcessStats {
  private:
   /** The Static Type for Linux Process Stats */
   StatisticsType* m_statsType;
diff --git a/cppcache/src/statistics/NullProcessStats.cpp b/cppcache/src/statistics/NullProcessStats.cpp
index 7b789c8..8b0bd5c 100644
--- a/cppcache/src/statistics/NullProcessStats.cpp
+++ b/cppcache/src/statistics/NullProcessStats.cpp
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <ace/Thread_Mutex.h>
 #include <ace/Singleton.h>
 #include "NullProcessStats.hpp"
diff --git a/cppcache/src/statistics/NullProcessStats.hpp b/cppcache/src/statistics/NullProcessStats.hpp
index 5e77da7..35c0487 100644
--- a/cppcache/src/statistics/NullProcessStats.hpp
+++ b/cppcache/src/statistics/NullProcessStats.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "Statistics.hpp"
 #include "StatisticsType.hpp"
@@ -42,7 +42,7 @@ namespace statistics {
  *
  */
 
-class CPPCACHE_EXPORT NullProcessStats : public ProcessStats {
+class _GEODE_EXPORT NullProcessStats : public ProcessStats {
  public:
   NullProcessStats(int64_t pid, const char* name);
   ~NullProcessStats();
diff --git a/cppcache/src/statistics/PoolStatsSampler.cpp b/cppcache/src/statistics/PoolStatsSampler.cpp
index 3e339e8..ea06279 100644
--- a/cppcache/src/statistics/PoolStatsSampler.cpp
+++ b/cppcache/src/statistics/PoolStatsSampler.cpp
@@ -51,7 +51,7 @@ PoolStatsSampler::PoolStatsSampler(int64_t sampleRate, CacheImpl* cache,
 }
 
 PoolStatsSampler::~PoolStatsSampler() {
-  // GF_SAFE_DELETE(m_adminRegion);
+  // _GEODE_SAFE_DELETE(m_adminRegion);
 }
 
 int32_t PoolStatsSampler::svc() {
diff --git a/cppcache/src/statistics/PoolStatsSampler.hpp b/cppcache/src/statistics/PoolStatsSampler.hpp
index 6e61fcb..67932e1 100644
--- a/cppcache/src/statistics/PoolStatsSampler.hpp
+++ b/cppcache/src/statistics/PoolStatsSampler.hpp
@@ -22,7 +22,7 @@
 
 #include <ace/Task.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "GeodeStatisticsFactory.hpp"
 
@@ -43,7 +43,7 @@ using client::ThinClientPoolDM;
 using client::AdminRegion;
 
 class StatisticsManager;
-class CPPCACHE_EXPORT PoolStatsSampler : public ACE_Task_Base {
+class _GEODE_EXPORT PoolStatsSampler : public ACE_Task_Base {
  public:
   PoolStatsSampler(int64_t sampleRate, CacheImpl* cache,
                    ThinClientPoolDM* distMan);
diff --git a/cppcache/src/statistics/ProcessStats.hpp b/cppcache/src/statistics/ProcessStats.hpp
index 05a290d..6fc5c06 100644
--- a/cppcache/src/statistics/ProcessStats.hpp
+++ b/cppcache/src/statistics/ProcessStats.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "Statistics.hpp"
 
@@ -38,7 +38,7 @@ namespace statistics {
  * This is necessary for monitoring the health of Geode components.
  *
  */
-class CPPCACHE_EXPORT ProcessStats {
+class _GEODE_EXPORT ProcessStats {
  public:
   /**
    * Creates a new <code>ProcessStats</code> that wraps the given
diff --git a/cppcache/src/statistics/SolarisProcessStats.cpp b/cppcache/src/statistics/SolarisProcessStats.cpp
index c8593fc..d6e4457 100644
--- a/cppcache/src/statistics/SolarisProcessStats.cpp
+++ b/cppcache/src/statistics/SolarisProcessStats.cpp
@@ -18,11 +18,12 @@
 #include <ace/Thread_Mutex.h>
 #include <ace/Singleton.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "SolarisProcessStats.hpp"
 #include "HostStatHelperSolaris.hpp"
 #include "../Assert.hpp"
+#include "config.h"
 
 namespace apache {
 namespace geode {
diff --git a/cppcache/src/statistics/SolarisProcessStats.hpp b/cppcache/src/statistics/SolarisProcessStats.hpp
index ab7778f..b023fca 100644
--- a/cppcache/src/statistics/SolarisProcessStats.hpp
+++ b/cppcache/src/statistics/SolarisProcessStats.hpp
@@ -19,7 +19,7 @@
 #ifndef GEODE_STATISTICS_SOLARISPROCESSSTATS_H_
 #define GEODE_STATISTICS_SOLARISPROCESSSTATS_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "Statistics.hpp"
 #include "StatisticsType.hpp"
@@ -27,8 +27,7 @@
 #include "ProcessStats.hpp"
 #include "HostStatHelper.hpp"
 #include "GeodeStatisticsFactory.hpp"
-
-using namespace apache::geode::client;
+#include "config.h"
 
 /** @file
  */
@@ -36,13 +35,15 @@ using namespace apache::geode::client;
 namespace apache {
 namespace geode {
 namespace statistics {
+
+using namespace apache::geode::client;
+
 /**
  * <P>This class provides the interface for statistics about a
  * Solaris operating system process that is using a Geode system.
  *
  */
-
-class CPPCACHE_EXPORT SolarisProcessStats : public ProcessStats {
+class _GEODE_EXPORT SolarisProcessStats : public ProcessStats {
  private:
   /** The Static Type for Solaris Process Stats */
   StatisticsType* m_statsType;
diff --git a/cppcache/src/statistics/StatArchiveWriter.cpp b/cppcache/src/statistics/StatArchiveWriter.cpp
index f03122f..795b978 100644
--- a/cppcache/src/statistics/StatArchiveWriter.cpp
+++ b/cppcache/src/statistics/StatArchiveWriter.cpp
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include <ace/ACE.h>
 #include <ace/Thread_Mutex.h>
@@ -386,7 +386,7 @@ StatArchiveWriter::~StatArchiveWriter() {
   }
   for (const auto &p : resourceTypeMap) {
     auto rt = p.second;
-    GF_SAFE_DELETE(rt);
+    _GEODE_SAFE_DELETE(rt);
   }
 }
 
diff --git a/cppcache/src/statistics/StatArchiveWriter.hpp b/cppcache/src/statistics/StatArchiveWriter.hpp
index 3e0d491..d0082f2 100644
--- a/cppcache/src/statistics/StatArchiveWriter.hpp
+++ b/cppcache/src/statistics/StatArchiveWriter.hpp
@@ -24,7 +24,7 @@
 #include <list>
 #include <chrono>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 #include <geode/Cache.hpp>
 #include <geode/DataOutput.hpp>
@@ -79,7 +79,7 @@ using std::chrono::steady_clock;
  *                 // descriptors in the previous sample run.
  */
 
-class CPPCACHE_EXPORT StatDataOutput {
+class _GEODE_EXPORT StatDataOutput {
  public:
   StatDataOutput(CacheImpl* cache);
   StatDataOutput(std::string, CacheImpl* cache);
@@ -139,8 +139,7 @@ class CPPCACHE_EXPORT StatDataOutput {
   friend class StatArchiveWriter;
 };
 
-class CPPCACHE_EXPORT ResourceType : private NonCopyable,
-                                     private NonAssignable {
+class _GEODE_EXPORT ResourceType : private NonCopyable, private NonAssignable {
  public:
   ResourceType(int32_t id, const StatisticsType *type);
   int32_t getId() const;
@@ -167,8 +166,7 @@ class CPPCACHE_EXPORT ResourceType : private NonCopyable,
  * FIX : Make the class NonCopyable
  */
 
-class CPPCACHE_EXPORT ResourceInst : private NonCopyable,
-                                     private NonAssignable {
+class _GEODE_EXPORT ResourceInst : private NonCopyable, private NonAssignable {
  public:
   ResourceInst(int32_t id, Statistics *, const ResourceType *,
                StatDataOutput *);
@@ -200,7 +198,7 @@ class HostStatSampler;
  * @class StatArchiveWriter
  */
 
-class CPPCACHE_EXPORT StatArchiveWriter {
+class _GEODE_EXPORT StatArchiveWriter {
  private:
   HostStatSampler *sampler;
   StatDataOutput *dataBuffer;
diff --git a/cppcache/src/statistics/StatSamplerStats.hpp b/cppcache/src/statistics/StatSamplerStats.hpp
index d6b3356..d9dcc18 100644
--- a/cppcache/src/statistics/StatSamplerStats.hpp
+++ b/cppcache/src/statistics/StatSamplerStats.hpp
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "StatisticDescriptor.hpp"
 #include "StatisticsType.hpp"
@@ -40,7 +40,7 @@ class StatisticsFactory;
 /**
  * Statistics related to the statistic sampler.
  */
-class CPPCACHE_EXPORT StatSamplerStats {
+class _GEODE_EXPORT StatSamplerStats {
  private:
   StatisticsType* samplerType;
   Statistics* samplerStats;
diff --git a/cppcache/src/statistics/StatisticDescriptor.hpp b/cppcache/src/statistics/StatisticDescriptor.hpp
index e8129e4..5bbfe10 100644
--- a/cppcache/src/statistics/StatisticDescriptor.hpp
+++ b/cppcache/src/statistics/StatisticDescriptor.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 /** @file
 */
@@ -46,7 +46,7 @@ using namespace apache::geode::client;
  *
  */
 
-class CPPCACHE_EXPORT StatisticDescriptor {
+class _GEODE_EXPORT StatisticDescriptor {
  public:
   /**
     * Returns the id of this statistic in a {@link StatisticsType
diff --git a/cppcache/src/statistics/Statistics.hpp b/cppcache/src/statistics/Statistics.hpp
index efb4d51..af6d618 100644
--- a/cppcache/src/statistics/Statistics.hpp
+++ b/cppcache/src/statistics/Statistics.hpp
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "StatisticsType.hpp"
 #include "StatisticDescriptor.hpp"
@@ -40,7 +40,7 @@ namespace statistics {
  * setting, incrementing and getting individual <code>StatisticDescriptor</code>
  * values.
  */
-class CPPCACHE_EXPORT Statistics {
+class _GEODE_EXPORT Statistics {
  public:
   /**
    * Closes these statistics.  After statistics have been closed, they
diff --git a/cppcache/src/statistics/StatisticsFactory.hpp b/cppcache/src/statistics/StatisticsFactory.hpp
index e94b28d..f45d831 100644
--- a/cppcache/src/statistics/StatisticsFactory.hpp
+++ b/cppcache/src/statistics/StatisticsFactory.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_STATISTICS_STATISTICSFACTORY_H_
 #define GEODE_STATISTICS_STATISTICSFACTORY_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 
 #include "StatisticDescriptor.hpp"
@@ -53,7 +53,7 @@ namespace statistics {
  *
  */
 
-class CPPCACHE_EXPORT StatisticsFactory {
+class _GEODE_EXPORT StatisticsFactory {
  protected:
   StatisticsFactory() {}
   StatisticsFactory(const StatisticsFactory&) = delete;
diff --git a/cppcache/src/statistics/StatisticsManager.cpp b/cppcache/src/statistics/StatisticsManager.cpp
index f6ea33d..d1c3411 100644
--- a/cppcache/src/statistics/StatisticsManager.cpp
+++ b/cppcache/src/statistics/StatisticsManager.cpp
@@ -22,7 +22,7 @@
 #include <ace/Time_Value.h>
 #include <ace/Guard_T.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/Exception.hpp>
 
 #include "StatisticsManager.hpp"
diff --git a/cppcache/src/statistics/StatisticsManager.hpp b/cppcache/src/statistics/StatisticsManager.hpp
index ce6d9d3..3a0aff2 100644
--- a/cppcache/src/statistics/StatisticsManager.hpp
+++ b/cppcache/src/statistics/StatisticsManager.hpp
@@ -23,7 +23,7 @@
 #include <memory>
 #include <vector>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 
 #include "Statistics.hpp"
diff --git a/cppcache/src/statistics/StatisticsType.hpp b/cppcache/src/statistics/StatisticsType.hpp
index c21bc3c..1c3daee 100644
--- a/cppcache/src/statistics/StatisticsType.hpp
+++ b/cppcache/src/statistics/StatisticsType.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_STATISTICS_STATISTICSTYPE_H_
 #define GEODE_STATISTICS_STATISTICSTYPE_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "StatisticDescriptor.hpp"
 
@@ -44,7 +44,7 @@ using namespace apache::geode::client;
  *
  */
 
-class CPPCACHE_EXPORT StatisticsType {
+class _GEODE_EXPORT StatisticsType {
  public:
   /**
    * Returns the name of this statistics type.
diff --git a/cppcache/src/statistics/WindowsProcessStats.cpp b/cppcache/src/statistics/WindowsProcessStats.cpp
index 955163c..f6d999f 100644
--- a/cppcache/src/statistics/WindowsProcessStats.cpp
+++ b/cppcache/src/statistics/WindowsProcessStats.cpp
@@ -18,7 +18,7 @@
 #include <ace/Thread_Mutex.h>
 #include <ace/Singleton.h>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 #include "WindowsProcessStats.hpp"
 #include "HostStatHelperWin.hpp"
diff --git a/cppcache/src/statistics/WindowsProcessStats.hpp b/cppcache/src/statistics/WindowsProcessStats.hpp
index d3d902b..61a577a 100644
--- a/cppcache/src/statistics/WindowsProcessStats.hpp
+++ b/cppcache/src/statistics/WindowsProcessStats.hpp
@@ -20,7 +20,7 @@
 #ifndef GEODE_STATISTICS_WINDOWSPROCESSSTATS_H_
 #define GEODE_STATISTICS_WINDOWSPROCESSSTATS_H_
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/ExceptionTypes.hpp>
 
 #include "Statistics.hpp"
@@ -43,7 +43,7 @@ using namespace apache::geode::client;
  * <P>This class provides the interface for statistics about a
  * Windows operating system process that is using a Geode system.
  */
-class CPPCACHE_EXPORT WindowsProcessStats : public ProcessStats {
+class _GEODE_EXPORT WindowsProcessStats : public ProcessStats {
  private:
   /** The Static Type for Windows Process Stats */
   StatisticsType* m_statsType;
diff --git a/cppcache/src/util/Log.hpp b/cppcache/src/util/Log.hpp
index fa89f29..b99ae9f 100644
--- a/cppcache/src/util/Log.hpp
+++ b/cppcache/src/util/Log.hpp
@@ -24,7 +24,7 @@
 #include <cstdarg>
 #include <string>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 #include <geode/util/LogLevel.hpp>
 
 /******************************************************************************/
@@ -140,7 +140,7 @@ class Exception;
   *
   */
 
-class CPPCACHE_EXPORT Log {
+class _GEODE_EXPORT Log {
  public:
   /******/
 
@@ -577,7 +577,7 @@ class LogFn {
  * These functions are added to facilitate logging in printf format.
  */
 
-class CPPCACHE_EXPORT LogVarargs {
+class _GEODE_EXPORT LogVarargs {
  public:
   static void debug(const char* fmt, ...);
   static void error(const char* fmt, ...);
diff --git a/cppcache/src/util/exception.hpp b/cppcache/src/util/exception.hpp
index 6dab1fb..4bafcb1 100644
--- a/cppcache/src/util/exception.hpp
+++ b/cppcache/src/util/exception.hpp
@@ -22,14 +22,15 @@
 
 #include <string>
 
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_base.hpp>
+#include "../ErrType.hpp"
 
 namespace apache {
 namespace geode {
 namespace client {
 
-extern void CPPCACHE_EXPORT GfErrTypeThrowException(const char* str,
-                                                    GfErrType err);
+extern void _GEODE_EXPORT GfErrTypeThrowException(const char* str,
+                                                  GfErrType err);
 
 #define GfErrTypeToException(str, err)   \
   {                                      \
diff --git a/cppcache/test/DataInputTest.cpp b/cppcache/test/DataInputTest.cpp
index c71317b..8e4d994 100644
--- a/cppcache/test/DataInputTest.cpp
+++ b/cppcache/test/DataInputTest.cpp
@@ -105,8 +105,7 @@ class TestDataInput {
   double readDouble() { return m_dataInput.readDouble(); }
 
   template <class PTR>
-  void readObject(std::shared_ptr<PTR> &ptr,
-                  bool throwOnError = DINP_THROWONERROR_DEFAULT) {
+  void readObject(std::shared_ptr<PTR> &ptr, bool throwOnError = false) {
     ptr = m_dataInput.readObject<PTR>(throwOnError);
   }
 
@@ -362,7 +361,7 @@ TEST_F(DataInputTest, TestReadUint8_tBytes) {
   EXPECT_EQ((uint8_t)190U, buffer[1]) << "Correct first uint8_t";
   EXPECT_EQ((uint8_t)250U, buffer[2]) << "Correct second uint8_t";
   EXPECT_EQ((uint8_t)206U, buffer[3]) << "Correct third uint8_t";
-  GF_SAFE_DELETE_ARRAY(buffer);
+  _GEODE_SAFE_DELETE_ARRAY(buffer);
 }
 
 TEST_F(DataInputTest, TestReadInt8_tBytes) {
@@ -376,7 +375,7 @@ TEST_F(DataInputTest, TestReadInt8_tBytes) {
   EXPECT_EQ((int8_t)-83, buffer[1]) << "Correct first int8_t";
   EXPECT_EQ((int8_t)-66, buffer[2]) << "Correct second int8_t";
   EXPECT_EQ((int8_t)-17, buffer[3]) << "Correct third int8_t";
-  GF_SAFE_DELETE_ARRAY(buffer);
+  _GEODE_SAFE_DELETE_ARRAY(buffer);
 }
 
 TEST_F(DataInputTest, TestReadIntUint16) {
@@ -613,8 +612,8 @@ TEST_F(DataInputTest, TestReadArrayOfByteArrays) {
   EXPECT_EQ((int8_t)-83, arrayOfByteArrays[0][1]) << "Correct first int8_t";
   EXPECT_EQ((int8_t)-66, arrayOfByteArrays[0][2]) << "Correct second int8_t";
   EXPECT_EQ((int8_t)-17, arrayOfByteArrays[0][3]) << "Correct third int8_t";
-  GF_SAFE_DELETE_ARRAY(elementLength);
-  GF_SAFE_DELETE_ARRAY(arrayOfByteArrays);
+  _GEODE_SAFE_DELETE_ARRAY(elementLength);
+  _GEODE_SAFE_DELETE_ARRAY(arrayOfByteArrays);
 }
 
 TEST_F(DataInputTest, TestGetBytesRead) {
diff --git a/cryptoimpl/DHImpl.cpp b/cryptoimpl/DHImpl.cpp
index 632f7c8..0ef6bb7 100644
--- a/cryptoimpl/DHImpl.cpp
+++ b/cryptoimpl/DHImpl.cpp
@@ -30,7 +30,7 @@
 #include <cstring>
 #include <cctype>
 
-#include <geode/geode_globals.hpp>
+#include <geode/internal/geode_globals.hpp>
 
 /*
 static DH * m_dh = NULL;
@@ -264,8 +264,7 @@ void gf_setPublicKeyOther(void *dhCtx, const unsigned char *pubkey,
   DH_PUBKEY_free(dhpubkey);
 
   int codes = 0;
-  int ret ATTR_UNUSED =
-      DH_check_pub_key(dhimpl->m_dh, dhimpl->m_pubKeyOther, &codes);
+  int ret = DH_check_pub_key(dhimpl->m_dh, dhimpl->m_pubKeyOther, &codes);
   LOGDH(" DHInit: DH_check_pub_key ret %d\n", ret);
   LOGDH(" DHInit: DH check_pub_key codes is 0x%04X\n", codes);
 }
@@ -277,8 +276,7 @@ void gf_computeSharedSecret(void *dhCtx) {
         dhimpl->m_pubKeyOther);
 
   LOGDH("DHcomputeKey DHSize is %d", DH_size(dhimpl->m_dh));
-  int ret ATTR_UNUSED =
-      DH_compute_key(dhimpl->m_key, dhimpl->m_pubKeyOther, dhimpl->m_dh);
+  int ret = DH_compute_key(dhimpl->m_key, dhimpl->m_pubKeyOther, dhimpl->m_dh);
   LOGDH("DHcomputeKey ret %d : Compute err(%d): %s", ret, ERR_get_error(),
         ERR_error_string(ERR_get_error(), NULL));
 }
diff --git a/cryptoimpl/DHImpl.hpp b/cryptoimpl/DHImpl.hpp
index a7e67c3..f54b4da 100644
--- a/cryptoimpl/DHImpl.hpp
+++ b/cryptoimpl/DHImpl.hpp
@@ -28,7 +28,7 @@
 #include <cstring>
 #include <string>
 
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_base.hpp>
 
 #define DH_ERR_NO_ERROR 0
 #define DH_ERR_UNSUPPORTED_ALGO 1
@@ -53,25 +53,24 @@ typedef struct DH_pubkey_st {
 } DH_PUBKEY;
 
 extern "C" {
-CPPCACHE_EXPORT int gf_initDhKeys(void** dhCtx, const char* dhAlgo,
-                                  const char* ksPath);
-CPPCACHE_EXPORT void gf_clearDhKeys(void* dhCtx);
-CPPCACHE_EXPORT unsigned char* gf_getPublicKey(void* dhCtx, int* len);
-CPPCACHE_EXPORT void gf_setPublicKeyOther(void* dhCtx,
-                                          const unsigned char* pubkey,
-                                          int length);
-CPPCACHE_EXPORT void gf_computeSharedSecret(void* dhCtx);
-CPPCACHE_EXPORT unsigned char* gf_encryptDH(void* dhCtx,
-                                            const unsigned char* cleartext,
-                                            int len, int* retLen);
-CPPCACHE_EXPORT unsigned char* gf_decryptDH(void* dhCtx,
-                                            const unsigned char* cleartext,
-                                            int len, int* retLen);
-CPPCACHE_EXPORT bool gf_verifyDH(void* dhCtx, const char* subject,
-                                 const unsigned char* challenge,
-                                 int challengeLen,
-                                 const unsigned char* response, int responseLen,
-                                 int* reason);
+_GEODE_EXPORT int gf_initDhKeys(void** dhCtx, const char* dhAlgo,
+                                const char* ksPath);
+_GEODE_EXPORT void gf_clearDhKeys(void* dhCtx);
+_GEODE_EXPORT unsigned char* gf_getPublicKey(void* dhCtx, int* len);
+_GEODE_EXPORT void gf_setPublicKeyOther(void* dhCtx,
+                                        const unsigned char* pubkey,
+                                        int length);
+_GEODE_EXPORT void gf_computeSharedSecret(void* dhCtx);
+_GEODE_EXPORT unsigned char* gf_encryptDH(void* dhCtx,
+                                          const unsigned char* cleartext,
+                                          int len, int* retLen);
+_GEODE_EXPORT unsigned char* gf_decryptDH(void* dhCtx,
+                                          const unsigned char* cleartext,
+                                          int len, int* retLen);
+_GEODE_EXPORT bool gf_verifyDH(void* dhCtx, const char* subject,
+                               const unsigned char* challenge, int challengeLen,
+                               const unsigned char* response, int responseLen,
+                               int* reason);
 }
 
 class DHImpl {
diff --git a/cryptoimpl/SSLImpl.hpp b/cryptoimpl/SSLImpl.hpp
index f37356e..1f541f0 100644
--- a/cryptoimpl/SSLImpl.hpp
+++ b/cryptoimpl/SSLImpl.hpp
@@ -30,7 +30,7 @@
 #include <ace/Recursive_Thread_Mutex.h>
 #include <ace/Time_Value.h>
 
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_base.hpp>
 
 #include "Ssl.hpp"
 
@@ -59,10 +59,10 @@ class SSLImpl : public apache::geode::client::Ssl {
 };
 
 extern "C" {
-CPPCACHE_EXPORT void* gf_create_SslImpl(ACE_SOCKET sock, const char* pubkeyfile,
-                                        const char* privkeyfile,
-                                        const char* pemPassword);
-CPPCACHE_EXPORT void gf_destroy_SslImpl(void* impl);
+_GEODE_EXPORT void* gf_create_SslImpl(ACE_SOCKET sock, const char* pubkeyfile,
+                                      const char* privkeyfile,
+                                      const char* pemPassword);
+_GEODE_EXPORT void gf_destroy_SslImpl(void* impl);
 }
 
 }  // namespace client
diff --git a/dhimpl/DHImpl.hpp b/dhimpl/DHImpl.hpp
index b0cb6c7..3eb3860 100644
--- a/dhimpl/DHImpl.hpp
+++ b/dhimpl/DHImpl.hpp
@@ -26,7 +26,7 @@
 #include <string>
 #include <vector>
 
-#include <geode/geode_base.hpp>
+#include <geode/internal/geode_base.hpp>
 
 #define DH_ERR_NO_ERROR 0
 #define DH_ERR_UNSUPPORTED_ALGO 1
@@ -51,19 +51,18 @@ typedef struct DH_pubkey_st {
 } DH_PUBKEY;
 
 extern "C" {
-CPPCACHE_EXPORT int gf_initDhKeys(const char* dhAlgo, const char* ksPath);
-CPPCACHE_EXPORT void gf_clearDhKeys(void);
-CPPCACHE_EXPORT unsigned char* gf_getPublicKey(int* len);
-CPPCACHE_EXPORT void gf_setPublicKeyOther(const unsigned char* pubkey,
-                                          int length);
-CPPCACHE_EXPORT void gf_computeSharedSecret(void);
-CPPCACHE_EXPORT unsigned char* gf_encryptDH(const unsigned char* cleartext,
-                                            int len, int* retLen);
-CPPCACHE_EXPORT bool gf_verifyDH(const char* subject,
-                                 const unsigned char* challenge,
-                                 int challengeLen,
-                                 const unsigned char* response, int responseLen,
-                                 int* reason);
+_GEODE_EXPORT int gf_initDhKeys(const char* dhAlgo, const char* ksPath);
+_GEODE_EXPORT void gf_clearDhKeys(void);
+_GEODE_EXPORT unsigned char* gf_getPublicKey(int* len);
+_GEODE_EXPORT void gf_setPublicKeyOther(const unsigned char* pubkey,
+                                        int length);
+_GEODE_EXPORT void gf_computeSharedSecret(void);
+_GEODE_EXPORT unsigned char* gf_encryptDH(const unsigned char* cleartext,
+                                          int len, int* retLen);
+_GEODE_EXPORT bool gf_verifyDH(const char* subject,
+                               const unsigned char* challenge, int challengeLen,
+                               const unsigned char* response, int responseLen,
+                               int* reason);
 }
 
 #endif  // GEODE_DHIMPL_DHIMPL_H_
diff --git a/docs/geode-native-docs/cpp-caching-api/pdx-auto-serialization.html.md.erb b/docs/geode-native-docs/cpp-caching-api/pdx-auto-serialization.html.md.erb
index 1bcd19a..a7ccdd0 100644
--- a/docs/geode-native-docs/cpp-caching-api/pdx-auto-serialization.html.md.erb
+++ b/docs/geode-native-docs/cpp-caching-api/pdx-auto-serialization.html.md.erb
@@ -208,9 +208,9 @@ For example, consider the following class definition:
 ``` pre
 #ifdef _WIN32
 #ifdef BUILD_TESTOBJECT
-#define TESTOBJECT_EXPORT LIBEXP
+#define TESTOBJECT_EXPORT _GEODE_LIBEXP
 #else
-#define TESTOBJECT_EXPORT LIBIMP
+#define TESTOBJECT_EXPORT _GEODE_LIBIMP
 #endif
 #else
 #define TESTOBJECT_EXPORT
@@ -226,9 +226,9 @@ Currently, the `pdxautoserializer` tool will fail to recognize `TESTOBJECT_EXPOR
 ``` pre
 #ifdef _WIN32
 #ifdef BUILD_TESTOBJECT
-#define TESTOBJECT_EXPORT LIBEXP
+#define TESTOBJECT_EXPORT _GEODE_LIBEXP
 #else
-#define TESTOBJECT_EXPORT LIBIMP
+#define TESTOBJECT_EXPORT _GEODE_LIBIMP
 #endif
 #else
 #define TESTOBJECT_EXPORT
diff --git a/quickstart/cpp/queryobjects/Position.hpp b/quickstart/cpp/queryobjects/Position.hpp
index 310e27f..ff8a400 100644
--- a/quickstart/cpp/queryobjects/Position.hpp
+++ b/quickstart/cpp/queryobjects/Position.hpp
@@ -28,9 +28,9 @@
 
 #ifdef _WIN32
 #ifdef BUILD_TESTOBJECT
-#define TESTOBJECT_EXPORT LIBEXP
+#define TESTOBJECT_EXPORT _GEODE_LIBEXP
 #else
-#define TESTOBJECT_EXPORT LIBIMP
+#define TESTOBJECT_EXPORT _GEODE_LIBIMP
 #endif
 #else
 #define TESTOBJECT_EXPORT
diff --git a/quickstart/cpp/queryobjects/PositionPdx.hpp b/quickstart/cpp/queryobjects/PositionPdx.hpp
index c143e37..aa91cd0 100644
... 1346 lines suppressed ...

-- 
To stop receiving notification emails like this one, please contact
['"commits@geode.apache.org" <co...@geode.apache.org>'].