Oracle Coherence for C++ API
Release 3.6.1.0

E18813-01

SmartMember Class Reference

#include <coherence/lang/SmartMember.hpp>

Inherited by MemberHandle, MemberHandle< BufferOutput >, MemberHandle< coherence::io::AbstractWriteBuffer >, 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< octet_t > >, MemberHandle< coherence::lang::Object >, MemberHandle< coherence::lang::Runnable >, MemberHandle< coherence::lang::ThreadGroup >, MemberHandle< coherence::lang::ThreadLocalReference >, MemberHandle< coherence::net::cache::ContinuousQueryCache::TaskDaemon >, MemberHandle< coherence::net::NamedCache >, MemberHandle< coherence::security::IdentityAsserter >, MemberHandle< coherence::security::IdentityTransformer >, MemberHandle< coherence::util::AbstractSparseArray::Node >, MemberHandle< coherence::util::AtomicCounter >, 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::MapTrigger >, MemberHandle< coherence::util::ObservableMap >, MemberHandle< coherence::util::SafeHashMap::Entry >, MemberHandle< coherence::util::Set >, MemberHandle< coherence::util::ThreadGate >, 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< octet_t > >, MemberHolder< coherence::lang::Array< T > >, MemberHolder< coherence::lang::Object >, MemberHolder< coherence::lang::WeakReference >, 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::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::Class >, MemberView< coherence::lang::Exception >, 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::Member >, MemberView< coherence::run::xml::XmlElement >, 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 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::security::IdentityTransformer >, MemberHandle< BufferOutput >, MemberHandle< coherence::io::AbstractWriteBuffer >, MemberHandle< coherence::util::AbstractSparseArray::Node >, MemberHandle< coherence::util::Set >, MemberHandle< coherence::util::Versionable >, MemberHandle< coherence::util::MapListener >, MemberHandle< coherence::util::SafeHashMap::Entry >, MemberHandle< Map >, MemberHandle< coherence::util::List >, MemberHandle< coherence::util::MapEvent >, MemberHandle< coherence::net::cache::ContinuousQueryCache::TaskDaemon >, MemberHandle< coherence::io::pof::WritingPofHandler >, MemberHandle< coherence::util::Iterator >, MemberHandle< coherence::util::ThreadGate >, MemberHandle< coherence::util::InvocableMap::EntryAggregator >, MemberHandle< coherence::lang::Array >, MemberHandle< coherence::util::TreeMap::Node >, MemberHandle< coherence::io::ReadBuffer >, MemberHandle< coherence::io::ReadBuffer::BufferInput >, MemberHandle< coherence::util::LongArray >, MemberHandle< coherence::io::pof::PofBufferReader >, MemberHandle< coherence::util::AtomicCounter >, MemberHandle< coherence::lang::ThreadGroup >, MemberHandle< coherence::io::pof::PofBufferWriter >, MemberHandle< coherence::io::pof::UserTypeReader >, MemberHandle< coherence::util::IdentityHashMap >, MemberHandle< coherence::io::pof::UserTypeWriter >, MemberHandle< coherence::security::IdentityAsserter >, 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::io::WriteBuffer::BufferOutput >, MemberHandle< coherence::lang::Object >, MemberHandle< coherence::io::pof::ReferenceLibrary >, MemberHandle< coherence::lang::Runnable >, MemberHandle< coherence::lang::Array< octet_t > >, MemberHandle< coherence::util::Map >, MemberHandle< coherence::util::LinkedList::ListElement >, MemberHandle< coherence::net::NamedCache >, 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::security::IdentityTransformer >, MemberHandle< BufferOutput >, MemberHandle< coherence::io::AbstractWriteBuffer >, MemberHandle< coherence::util::AbstractSparseArray::Node >, MemberHandle< coherence::util::Set >, MemberHandle< coherence::util::Versionable >, MemberHandle< coherence::util::MapListener >, MemberHandle< coherence::util::SafeHashMap::Entry >, MemberHandle< Map >, MemberHandle< coherence::util::List >, MemberHandle< coherence::util::MapEvent >, MemberHandle< coherence::net::cache::ContinuousQueryCache::TaskDaemon >, MemberHandle< coherence::io::pof::WritingPofHandler >, MemberHandle< coherence::util::Iterator >, MemberHandle< coherence::util::ThreadGate >, MemberHandle< coherence::util::InvocableMap::EntryAggregator >, MemberHandle< coherence::lang::Array >, MemberHandle< coherence::util::TreeMap::Node >, MemberHandle< coherence::io::ReadBuffer >, MemberHandle< coherence::io::ReadBuffer::BufferInput >, MemberHandle< coherence::util::LongArray >, MemberHandle< coherence::io::pof::PofBufferReader >, MemberHandle< coherence::util::AtomicCounter >, MemberHandle< coherence::lang::ThreadGroup >, MemberHandle< coherence::io::pof::PofBufferWriter >, MemberHandle< coherence::io::pof::UserTypeReader >, MemberHandle< coherence::util::IdentityHashMap >, MemberHandle< coherence::io::pof::UserTypeWriter >, MemberHandle< coherence::security::IdentityAsserter >, 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::io::WriteBuffer::BufferOutput >, MemberHandle< coherence::lang::Object >, MemberHandle< coherence::io::pof::ReferenceLibrary >, MemberHandle< coherence::lang::Runnable >, MemberHandle< coherence::lang::Array< octet_t > >, MemberHandle< coherence::util::Map >, MemberHandle< coherence::util::LinkedList::ListElement >, MemberHandle< coherence::net::NamedCache >, MemberHandle< coherence::util::MapTrigger >, MemberHolder< coherence::util::ConverterCollections::ConverterQueryMap >, MemberHolder< coherence::util::Set >, 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< 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::util::TypedCollections::TypedMap::EntryConverter >, MemberView< coherence::util::Listeners >, MemberView< coherence::io::pof::RawDate >, 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::net::cache::CacheEvent >, MemberView< coherence::util::Comparator >, 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::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::io::pof::reflect::PofNavigator >, MemberView< coherence::net::Member >, MemberView< coherence::run::xml::XmlElement >, 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, 2010, Oracle and/or its affiliates. All rights reserved.