Oracle Fusion Middleware C++ API Reference for Oracle Coherence
12c (12.1.2)

E26041-01

SmartMember Class Reference

#include <coherence/lang/SmartMember.hpp>

Inherited by MemberHandle, MemberHandle< BufferOutput >, MemberHandle< coherence::io::AbstractWriteBuffer >, MemberHandle< coherence::io::OctetArrayWriteBuffer >, MemberHandle< coherence::io::pof::PofBufferReader >, MemberHandle< coherence::io::pof::PofBufferWriter >, MemberHandle< coherence::io::pof::ReferenceLibrary >, MemberHandle< coherence::io::pof::UserTypeReader >, MemberHandle< coherence::io::pof::UserTypeWriter >, MemberHandle< coherence::io::pof::WritingPofHandler >, MemberHandle< coherence::io::pof::WritingPofHandler::Complex >, MemberHandle< coherence::io::ReadBuffer >, MemberHandle< coherence::io::ReadBuffer::BufferInput >, MemberHandle< coherence::io::WriteBuffer >, MemberHandle< coherence::io::WriteBuffer::BufferOutput >, MemberHandle< coherence::lang::Array >, MemberHandle< coherence::lang::Array< int64_t > >, MemberHandle< coherence::lang::Array< octet_t > >, MemberHandle< coherence::lang::Object >, MemberHandle< coherence::lang::Runnable >, MemberHandle< coherence::lang::ThreadGroup >, MemberHandle< coherence::lang::ThreadLocalReference >, MemberHandle< coherence::net::cache::AbstractBundler >, MemberHandle< coherence::net::cache::AbstractBundler::Statistics >, MemberHandle< coherence::net::cache::BundlingNamedCache >, MemberHandle< coherence::net::cache::BundlingNamedCache::GetBundler >, MemberHandle< coherence::net::cache::BundlingNamedCache::PutBundler >, MemberHandle< coherence::net::cache::BundlingNamedCache::RemoveBundler >, MemberHandle< coherence::net::cache::CacheLoader >, MemberHandle< coherence::net::cache::CacheMap >, MemberHandle< coherence::net::cache::CacheStore >, MemberHandle< coherence::net::cache::CachingMap::FrontMapListener >, MemberHandle< coherence::net::cache::ContinuousQueryCache::TaskDaemon >, MemberHandle< coherence::net::cache::EvictionPolicy >, MemberHandle< coherence::net::cache::OldCache >, MemberHandle< coherence::net::cache::SimpleCacheStatistics >, MemberHandle< coherence::net::CacheService >, MemberHandle< coherence::net::MemberListener >, MemberHandle< coherence::net::NamedCache >, MemberHandle< coherence::net::partition::PartitionSet >, MemberHandle< coherence::util::AbstractSparseArray::Node >, MemberHandle< coherence::util::AtomicCounter >, MemberHandle< coherence::util::ConcurrentMap >, MemberHandle< coherence::util::Filter >, MemberHandle< coherence::util::IdentityHashMap >, MemberHandle< coherence::util::InvocableMap::EntryAggregator >, MemberHandle< coherence::util::InvocableMap::ParallelAwareAggregator >, MemberHandle< coherence::util::Iterator >, MemberHandle< coherence::util::LinkedList::ListElement >, MemberHandle< coherence::util::List >, MemberHandle< coherence::util::LongArray >, MemberHandle< coherence::util::Map >, MemberHandle< coherence::util::MapEvent >, MemberHandle< coherence::util::MapListener >, MemberHandle< coherence::util::MapListenerSupport >, MemberHandle< coherence::util::MapTrigger >, MemberHandle< coherence::util::ObservableMap >, MemberHandle< coherence::util::SafeHashMap::Entry >, MemberHandle< coherence::util::Set >, MemberHandle< coherence::util::TreeMap::Node >, MemberHandle< coherence::util::Versionable >, MemberHandle< Map >, MemberHolder, MemberHolder< coherence::lang::Array< bool > >, MemberHolder< coherence::lang::Array< char > >, MemberHolder< coherence::lang::Array< int32_t > >, MemberHolder< coherence::lang::Array< int64_t > >, MemberHolder< coherence::lang::Array< octet_t > >, MemberHolder< coherence::lang::Array< T > >, MemberHolder< coherence::lang::Object >, MemberHolder< coherence::lang::WeakReference >, MemberHolder< coherence::net::cache::OldCache >, MemberHolder< coherence::util::Collection >, MemberHolder< coherence::util::ConverterCollections::ConverterConcurrentMap >, MemberHolder< coherence::util::ConverterCollections::ConverterInvocableMap >, MemberHolder< coherence::util::ConverterCollections::ConverterQueryMap >, MemberHolder< coherence::util::Iterator >, MemberHolder< coherence::util::List >, MemberHolder< coherence::util::ListIterator >, MemberHolder< coherence::util::Map >, MemberHolder< coherence::util::Map::Entry >, MemberHolder< coherence::util::SafeHashMap >, MemberHolder< coherence::util::Set >, MemberView, MemberView< coherence::io::AbstractOctetArrayReadBuffer >, MemberView< coherence::io::AbstractReadBuffer >, MemberView< coherence::io::pof::PofContext >, MemberView< coherence::io::pof::RawDate >, MemberView< coherence::io::pof::RawTime >, MemberView< coherence::io::pof::reflect::PofNavigator >, MemberView< coherence::lang::Array >, MemberView< coherence::lang::Array< bool > >, MemberView< coherence::lang::Array< char > >, MemberView< coherence::lang::Array< int32_t > >, MemberView< coherence::lang::Array< octet_t > >, MemberView< coherence::lang::Array< T > >, MemberView< coherence::lang::Class >, MemberView< coherence::lang::Exception >, MemberView< coherence::lang::Method >, MemberView< coherence::lang::Number >, MemberView< coherence::lang::Object >, MemberView< coherence::lang::String >, MemberView< coherence::lang::Thread >, MemberView< coherence::lang::WeakReference >, MemberView< coherence::net::cache::CacheEvent >, MemberView< coherence::net::cache::UnitCalculator >, MemberView< coherence::net::InetSocketAddress >, MemberView< coherence::net::Member >, MemberView< coherence::net::OperationalContext >, MemberView< coherence::run::xml::XmlElement >, MemberView< coherence::security::IdentityAsserter >, MemberView< coherence::security::IdentityTransformer >, MemberView< coherence::util::Binary >, MemberView< coherence::util::Comparator >, MemberView< coherence::util::Converter >, MemberView< coherence::util::ConverterCollections::EntryConverter >, MemberView< coherence::util::Filter >, MemberView< coherence::util::filter::IndexAwareFilter >, MemberView< coherence::util::filter::LikeFilter::MatchStep >, MemberView< coherence::util::filter::MapEventFilter >, MemberView< coherence::util::InvocableMap::EntryProcessor >, MemberView< coherence::util::List >, MemberView< coherence::util::Listeners >, MemberView< coherence::util::Map >, MemberView< coherence::util::MapEvent >, MemberView< coherence::util::MapEventTransformer >, MemberView< coherence::util::Set >, MemberView< coherence::util::TypedCollections::TypedMap::EntryConverter >, MemberView< coherence::util::ValueExtractor >, MemberView< coherence::util::ValueManipulator >, and MemberView< coherence::util::ValueUpdater >.

List of all members.


Detailed Description

Base class for smart data-members of managed Objects.

Smart data-members include additional information regarding their life-cycle, including a reference to their enclosing Object (guardian). The smart member is initialized with a reference to its guardian, and has the same life-cycle as the guardian. Creating a SmartMember which is not a data-member of the guardian used during initialization will result in unsafe/undefined behavior.

Author:
mf 2008.01.30

Public Types

enum  Mutability
 The mutability of the SmartMember.

Public Member Functions

 SmartMember (const Object &oGuardian, Mutability nMutability=inherited)
 Construct a new SmartMember.
virtual ~SmartMember ()
 Destruct the SmartMember.

Protected Member Functions

 SmartMember ()
 Construct an orphaned SmartMember.
virtual size64_t retained () const =0
 Return the deep byte size of any managed objects held by this SmartMember.
void readBarrier () const
 Cross the guardian's read barrier.
void writeBarrier () const
 Cross the guardian's write barrier.
virtual void onInit ()
 Event called once the guardian Object has finished being constructed.
virtual void onConst ()
 Event called when the guardian Object becomes only referenced via const pointers (Views).
virtual void onEscape (bool) const
 Event called when the guarding Object's escape state changes.

Protected Attributes

Mutability m_nMutability
 The mutability of the SmartMember.

Constructor & Destructor Documentation

SmartMember ( const Object oGuardian,
Mutability  nMutability = inherited 
) [inline]

Construct a new SmartMember.

Parameters:
oGuardian the data-member's guardian Object.
nMutability the mutability of the SmartMember

SmartMember (  )  [protected]

Construct an orphaned SmartMember.

The smart-member will not be usable until a guardian is assigned.

See also:
setGuardian()


Member Function Documentation

virtual void onInit (  )  [inline, protected, virtual]

Event called once the guardian Object has finished being constructed.

Specifically when the first attachment is made.

As with all event methods any derived implementation should include a call to the super class's implementation.

The default implementation calls the onInit() method of each of the Object's SmartMembers.

virtual void onConst (  )  [inline, protected, virtual]

Event called when the guardian Object becomes only referenced via const pointers (Views).

As the SmartMember is a data-member of this Object, the data-member infer that only const methods will be called from now on.

Derived implementations of this method should include a delegation call to their super class onConst() method, after they've done their own processing of the event.

Not that this method will only be called by the guardian if the SmartMember's mutability state is set to inherited.

Reimplemented in MemberHandle, MemberHandle< coherence::net::partition::PartitionSet >, MemberHandle< BufferOutput >, MemberHandle< coherence::io::AbstractWriteBuffer >, MemberHandle< coherence::util::AbstractSparseArray::Node >, MemberHandle< coherence::net::cache::SimpleCacheStatistics >, MemberHandle< coherence::util::Set >, MemberHandle< coherence::net::cache::BundlingNamedCache::PutBundler >, MemberHandle< coherence::util::Versionable >, MemberHandle< coherence::net::cache::OldCache >, MemberHandle< coherence::util::MapListener >, MemberHandle< coherence::util::SafeHashMap::Entry >, MemberHandle< Map >, MemberHandle< coherence::net::cache::EvictionPolicy >, MemberHandle< coherence::util::List >, MemberHandle< coherence::util::MapEvent >, MemberHandle< coherence::net::cache::ContinuousQueryCache::TaskDaemon >, MemberHandle< coherence::io::pof::WritingPofHandler >, MemberHandle< coherence::net::cache::CacheStore >, MemberHandle< coherence::util::Iterator >, MemberHandle< coherence::net::cache::CachingMap::FrontMapListener >, MemberHandle< coherence::util::InvocableMap::EntryAggregator >, MemberHandle< coherence::lang::Array >, MemberHandle< coherence::net::cache::CacheMap >, MemberHandle< coherence::lang::Array< int64_t > >, MemberHandle< coherence::util::TreeMap::Node >, MemberHandle< coherence::io::ReadBuffer >, MemberHandle< coherence::io::ReadBuffer::BufferInput >, MemberHandle< coherence::util::LongArray >, MemberHandle< coherence::net::MemberListener >, MemberHandle< coherence::util::Filter >, MemberHandle< coherence::net::cache::BundlingNamedCache::GetBundler >, MemberHandle< coherence::net::cache::AbstractBundler >, MemberHandle< coherence::io::pof::PofBufferReader >, MemberHandle< coherence::lang::ThreadGroup >, MemberHandle< coherence::util::ConcurrentMap >, MemberHandle< coherence::util::AtomicCounter >, MemberHandle< coherence::io::pof::PofBufferWriter >, MemberHandle< coherence::io::pof::UserTypeReader >, MemberHandle< coherence::util::IdentityHashMap >, MemberHandle< coherence::io::pof::UserTypeWriter >, MemberHandle< coherence::io::OctetArrayWriteBuffer >, MemberHandle< coherence::util::InvocableMap::ParallelAwareAggregator >, MemberHandle< coherence::io::pof::WritingPofHandler::Complex >, MemberHandle< coherence::io::WriteBuffer >, MemberHandle< coherence::lang::ThreadLocalReference >, MemberHandle< coherence::util::ObservableMap >, MemberHandle< coherence::net::cache::BundlingNamedCache::RemoveBundler >, MemberHandle< coherence::io::WriteBuffer::BufferOutput >, MemberHandle< coherence::lang::Object >, MemberHandle< coherence::net::cache::AbstractBundler::Statistics >, MemberHandle< coherence::io::pof::ReferenceLibrary >, MemberHandle< coherence::util::MapListenerSupport >, MemberHandle< coherence::lang::Runnable >, MemberHandle< coherence::net::CacheService >, MemberHandle< coherence::lang::Array< octet_t > >, MemberHandle< coherence::util::Map >, MemberHandle< coherence::util::LinkedList::ListElement >, MemberHandle< coherence::net::cache::BundlingNamedCache >, MemberHandle< coherence::net::NamedCache >, MemberHandle< coherence::net::cache::CacheLoader >, and MemberHandle< coherence::util::MapTrigger >.

virtual void onEscape ( bool   )  const [inline, protected, virtual]

Event called when the guarding Object's escape state changes.

Derived implementations of this method should include a delegation call to their super class onEscape() method, after they've done their own processing of the event.

Parameters:
fEscaped true if the object is being escaped, false if the object is being captured

Reimplemented in MemberHandle, MemberHolder, MemberView, MemberHandle< coherence::net::partition::PartitionSet >, MemberHandle< BufferOutput >, MemberHandle< coherence::io::AbstractWriteBuffer >, MemberHandle< coherence::util::AbstractSparseArray::Node >, MemberHandle< coherence::net::cache::SimpleCacheStatistics >, MemberHandle< coherence::util::Set >, MemberHandle< coherence::net::cache::BundlingNamedCache::PutBundler >, MemberHandle< coherence::util::Versionable >, MemberHandle< coherence::net::cache::OldCache >, MemberHandle< coherence::util::MapListener >, MemberHandle< coherence::util::SafeHashMap::Entry >, MemberHandle< Map >, MemberHandle< coherence::net::cache::EvictionPolicy >, MemberHandle< coherence::util::List >, MemberHandle< coherence::util::MapEvent >, MemberHandle< coherence::net::cache::ContinuousQueryCache::TaskDaemon >, MemberHandle< coherence::io::pof::WritingPofHandler >, MemberHandle< coherence::net::cache::CacheStore >, MemberHandle< coherence::util::Iterator >, MemberHandle< coherence::net::cache::CachingMap::FrontMapListener >, MemberHandle< coherence::util::InvocableMap::EntryAggregator >, MemberHandle< coherence::lang::Array >, MemberHandle< coherence::net::cache::CacheMap >, MemberHandle< coherence::lang::Array< int64_t > >, MemberHandle< coherence::util::TreeMap::Node >, MemberHandle< coherence::io::ReadBuffer >, MemberHandle< coherence::io::ReadBuffer::BufferInput >, MemberHandle< coherence::util::LongArray >, MemberHandle< coherence::net::MemberListener >, MemberHandle< coherence::util::Filter >, MemberHandle< coherence::net::cache::BundlingNamedCache::GetBundler >, MemberHandle< coherence::net::cache::AbstractBundler >, MemberHandle< coherence::io::pof::PofBufferReader >, MemberHandle< coherence::lang::ThreadGroup >, MemberHandle< coherence::util::ConcurrentMap >, MemberHandle< coherence::util::AtomicCounter >, MemberHandle< coherence::io::pof::PofBufferWriter >, MemberHandle< coherence::io::pof::UserTypeReader >, MemberHandle< coherence::util::IdentityHashMap >, MemberHandle< coherence::io::pof::UserTypeWriter >, MemberHandle< coherence::io::OctetArrayWriteBuffer >, MemberHandle< coherence::util::InvocableMap::ParallelAwareAggregator >, MemberHandle< coherence::io::pof::WritingPofHandler::Complex >, MemberHandle< coherence::io::WriteBuffer >, MemberHandle< coherence::lang::ThreadLocalReference >, MemberHandle< coherence::util::ObservableMap >, MemberHandle< coherence::net::cache::BundlingNamedCache::RemoveBundler >, MemberHandle< coherence::io::WriteBuffer::BufferOutput >, MemberHandle< coherence::lang::Object >, MemberHandle< coherence::net::cache::AbstractBundler::Statistics >, MemberHandle< coherence::io::pof::ReferenceLibrary >, MemberHandle< coherence::util::MapListenerSupport >, MemberHandle< coherence::lang::Runnable >, MemberHandle< coherence::net::CacheService >, MemberHandle< coherence::lang::Array< octet_t > >, MemberHandle< coherence::util::Map >, MemberHandle< coherence::util::LinkedList::ListElement >, MemberHandle< coherence::net::cache::BundlingNamedCache >, MemberHandle< coherence::net::NamedCache >, MemberHandle< coherence::net::cache::CacheLoader >, MemberHandle< coherence::util::MapTrigger >, MemberHolder< coherence::util::ConverterCollections::ConverterQueryMap >, MemberHolder< coherence::util::Set >, MemberHolder< coherence::net::cache::OldCache >, MemberHolder< coherence::util::ConverterCollections::ConverterInvocableMap >, MemberHolder< coherence::lang::WeakReference >, MemberHolder< coherence::util::SafeHashMap >, MemberHolder< coherence::util::List >, MemberHolder< coherence::util::Iterator >, MemberHolder< coherence::util::Map::Entry >, MemberHolder< coherence::util::Collection >, MemberHolder< coherence::lang::Array< int64_t > >, MemberHolder< coherence::lang::Array< T > >, MemberHolder< coherence::util::ConverterCollections::ConverterConcurrentMap >, MemberHolder< coherence::lang::Array< char > >, MemberHolder< coherence::lang::Array< int32_t > >, MemberHolder< coherence::lang::Array< bool > >, MemberHolder< coherence::lang::Object >, MemberHolder< coherence::util::Map >, MemberHolder< coherence::lang::Array< octet_t > >, MemberHolder< coherence::util::ListIterator >, MemberView< coherence::util::filter::IndexAwareFilter >, MemberView< coherence::net::cache::UnitCalculator >, MemberView< coherence::util::TypedCollections::TypedMap::EntryConverter >, MemberView< coherence::io::AbstractOctetArrayReadBuffer >, MemberView< coherence::util::Listeners >, MemberView< coherence::io::pof::RawDate >, MemberView< coherence::security::IdentityTransformer >, MemberView< coherence::util::Set >, MemberView< coherence::util::List >, MemberView< coherence::lang::WeakReference >, MemberView< coherence::util::ValueManipulator >, MemberView< coherence::util::MapEvent >, MemberView< coherence::util::Converter >, MemberView< coherence::io::pof::PofContext >, MemberView< coherence::util::filter::LikeFilter::MatchStep >, MemberView< coherence::lang::String >, MemberView< coherence::util::Binary >, MemberView< coherence::lang::Array >, MemberView< coherence::io::pof::RawTime >, MemberView< coherence::lang::Class >, MemberView< coherence::lang::Array< T > >, MemberView< coherence::net::cache::CacheEvent >, MemberView< coherence::util::Comparator >, MemberView< coherence::net::OperationalContext >, MemberView< coherence::util::ValueUpdater >, MemberView< coherence::lang::Thread >, MemberView< coherence::lang::Array< char > >, MemberView< coherence::util::InvocableMap::EntryProcessor >, MemberView< coherence::util::Filter >, MemberView< coherence::lang::Method >, MemberView< coherence::lang::Number >, MemberView< coherence::lang::Array< int32_t > >, MemberView< coherence::io::AbstractReadBuffer >, MemberView< coherence::util::ConverterCollections::EntryConverter >, MemberView< coherence::util::MapEventTransformer >, MemberView< coherence::lang::Array< bool > >, MemberView< coherence::util::filter::MapEventFilter >, MemberView< coherence::security::IdentityAsserter >, MemberView< coherence::io::pof::reflect::PofNavigator >, MemberView< coherence::net::InetSocketAddress >, MemberView< coherence::run::xml::XmlElement >, MemberView< coherence::net::Member >, MemberView< coherence::lang::Object >, MemberView< coherence::util::ValueExtractor >, MemberView< coherence::lang::Array< octet_t > >, MemberView< coherence::util::Map >, and MemberView< coherence::lang::Exception >.


The documentation for this class was generated from the following file:
Copyright © 2000, 2013, Oracle and/or its affiliates. All rights reserved.