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

E80355-01

ConfigurableAddressProviderFactory Class Reference

#include <coherence/net/ConfigurableAddressProviderFactory.hpp>

Inherits Object, AddressProviderFactory, and XmlConfigurable.

List of all members.


Detailed Description

An AddressProviderFactory implementation that creates instances of a AddressProvider class configured using an XmlElement of the following structure:.

   <!ELEMENT ... (socket-address+ | address-provider)>
   <!ELEMENT address-provider 
     (class-name | (class-factory-name, method-name), init-params?>
   <!ELEMENT socket-address (address, port)>
 

Author:
wl 2012.04.04
Since:
Coherence 12.1.2

Public Types

typedef spec::Handle Handle
 ConfigurableAddressProviderFactory Handle definition.
typedef spec::View View
 ConfigurableAddressProviderFactory View definition.
typedef spec::Holder Holder
 ConfigurableAddressProviderFactory Holder definition.

Public Member Functions

virtual
AddressProvider::Handle 
createAddressProvider (ClassLoader::View vLoader=NULL)
 Instantiate an AddressProvider configured according to the specified XML.
virtual void setConfig (XmlElement::View xml)
 
virtual XmlElement::View getConfig () const
 If this Object was previously configured using some XML configuration, the corresponding XmlElement is returned.

Returns:
a view of the XmlElement used to configure this Object

virtual TypedHandle
< const String
toString () const
 Output a human-readable description of this Object to the given stream.

Note that when overriding this method the return type must be TypedHandle<const String> rather then String::View. These two types are assignment compatible but not equivalent and declaring the override with String::View will not be a compatible override.

coherence::lang::operator<<(std::ostream, Object::View) is defined and will call into the toString method, to output Objects. If a managed String object is desired, the COH_TO_STRING macro can be used to build up a String from streamable contents and is generally how toString() will be implemented.

 Object::View vKey   = ...
 Object::View vValue = ...
 std::cout << vKey << " = " << vValue << std::endl;

 String::View vs = COH_TO_STRING(vKey << " = " << vValue);

The COH_TO_STRING macro is also the most common way to implement the toString method. For example:

 virtual TypedHandle<const String> Person::toString() const
     {
     return COH_TO_STRING("Name: " << f_sName << " SSN: " << f_nSSN);
     }

Returns:
a string representation of this object


Protected Member Functions

 ConfigurableAddressProviderFactory ()
 Create a new ConfigurableAddressProviderFactory instance.

Protected Attributes

FinalView< XmlElementf_vXmlConfig
 XML configuration for this ConfigurableAddressProviderFactory.

Member Function Documentation

virtual AddressProvider::Handle createAddressProvider ( ClassLoader::View  vLoader = NULL  )  [virtual]

Instantiate an AddressProvider configured according to the specified XML.

The passed XML has to conform to the following format:

   <!ELEMENT ... (socket-address+ | address-provider)>
   <!ELEMENT address-provider
     (class-name | (class-factory-name, method-name), init-params?>
   <!ELEMENT socket-address (address, port)>
 

Parameters:
vLoader the optional ClassLoader with which to configure the new AddressProvider.
Returns:
an instance of the corresponding AddressProvider implementation.

Implements AddressProviderFactory.


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