Public Member Functions | |
| const char * | asChar () const |
| Return the string that backs this CacheableString as a char *. | |
| const wchar_t * | asWChar () const |
| Return the string that backs this CacheableString as a wchar_t *. | |
| virtual int32_t | classId () const |
| virtual const char * | className () const |
| get the name of the class of this object for logging purpose | |
| void | copyString (const wchar_t *value, size_t len) |
Private method to populate the CacheableString. | |
| void | copyString (const char *value, size_t len) |
Private method to populate the CacheableString. | |
| virtual int8_t | DSFID () const |
| virtual Serializable * | fromData (DataInput &input) |
| virtual uint32_t | hashcode () const |
| return the hashcode for this key. | |
| bool | isWideString () const |
| Returns true if the underlying string is a wide-character string. | |
| uint32_t | length () const |
| Return the length of the contained string. | |
| virtual size_t | logString (char *buffer, size_t maxLength) const |
| used to render as a string for logging. | |
| virtual uint32_t | objectSize () const |
| virtual bool | operator== (const CacheableKey &other) const |
| return true if this key matches other. | |
| void | preserveSB () const |
| Atomically increment reference count. | |
| int32_t | refCount () |
| |
| void | releaseSB () const |
| Atomically decrement reference count, the SharedBase object is automatically deleted when its reference count goes to zero. | |
| virtual void | toData (DataOutput &output) const |
| virtual CacheableStringPtr | toString () const |
| Display this object as 'string', which depends on the implementation in the subclasses. | |
| const char * | toString () |
| Display this object as c string. | |
| virtual int8_t | typeId () const |
Static Public Member Functions | |
| template<class PRIM> | |
| static CacheableKeyPtr | create (const PRIM value) |
| Factory method that creates the key type that matches the type of value. | |
| static CacheableFileNamePtr | create (const wchar_t *value, size_t len) |
| Factory method for creating an instance of CacheableFileName from a wide-character C string of given length. | |
| static CacheableFileNamePtr | create (const wchar_t *value) |
| Factory method for creating an instance of CacheableFileName from a wide-character null terminated C string. | |
| static CacheableFileNamePtr | create (const char *value, size_t len) |
| Factory method for creating an instance of CacheableFileName from a C string of given length. | |
| static CacheableFileNamePtr | create (const char *value) |
| Factory method for creating an instance of CacheableFileName from a null terminated C string. | |
| static Serializable * | createDeserializable () |
| static Serializable * | createDeserializableHuge () |
| static CacheableStringPtr | createNoCopy (wchar_t *value, size_t len) |
| Factory method for creating an instance of CacheableString from a wide-character C string of given length by taking ownership of the string without making a copy. | |
| static CacheableStringPtr | createNoCopy (char *value, size_t len) |
| Factory method for creating an instance of CacheableString from a C string of given length by taking ownership of the string without making a copy. | |
| static Serializable * | createUTFDeserializable () |
| static Serializable * | createUTFDeserializableHuge () |
| static void | registerType (TypeFactoryMethod creationFunction) |
Protected Member Functions | |
| CacheableFileName (const wchar_t *value, size_t len) | |
| Constructor, given a wide-char string and length. | |
| CacheableFileName (const wchar_t *value) | |
| Constructor, given a wide-char string. | |
| CacheableFileName (const char *value, size_t len) | |
| Constructor, given a C string and length. | |
| CacheableFileName (const char *value) | |
| Constructor, given a C string. | |
| CacheableFileName () | |
| Default constructor. | |
| gemfire::CacheableFileName::CacheableFileName | ( | ) | [inline, protected] |
Default constructor.
| gemfire::CacheableFileName::CacheableFileName | ( | const char * | value | ) | [inline, protected] |
Constructor, given a C string.
| gemfire::CacheableFileName::CacheableFileName | ( | const char * | value, | |
| size_t | len | |||
| ) | [inline, protected] |
Constructor, given a C string and length.
| gemfire::CacheableFileName::CacheableFileName | ( | const wchar_t * | value | ) | [inline, protected] |
Constructor, given a wide-char string.
| gemfire::CacheableFileName::CacheableFileName | ( | const wchar_t * | value, | |
| size_t | len | |||
| ) | [inline, protected] |
Constructor, given a wide-char string and length.
| const char* gemfire::CacheableString::asChar | ( | ) | const [inline, inherited] |
Return the string that backs this CacheableString as a char *.
This shall throw an exception if the underlying string is a wchar_t* -- the caller should use typeId to determine the actual type, or isWideString to find whether this is a wide-character string.
| IllegalStateException | if the underlying string is a wchar_t * |
| const wchar_t* gemfire::CacheableString::asWChar | ( | ) | const [inline, inherited] |
Return the string that backs this CacheableString as a wchar_t *.
This shall throw an exception if the underlying string is a char* -- the caller should use typeId to determine the actual type, or isWideString to find whether this is indeed a wide-character string.
| IllegalStateException | if the underlying string is a char * |
| virtual int32_t gemfire::CacheableFileName::classId | ( | ) | const [virtual] |
Return the classId of the instance being serialized. This is used by deserialization to determine what instance type to create and deserialize into.
Reimplemented from gemfire::CacheableString.
| virtual const char* gemfire::CacheableFileName::className | ( | ) | const [inline, virtual] |
get the name of the class of this object for logging purpose
Reimplemented from gemfire::CacheableString.
| void gemfire::CacheableString::copyString | ( | const wchar_t * | value, | |
| size_t | len | |||
| ) | [inherited] |
Private method to populate the CacheableString.
| void gemfire::CacheableString::copyString | ( | const char * | value, | |
| size_t | len | |||
| ) | [inherited] |
Private method to populate the CacheableString.
| static CacheableKeyPtr gemfire::CacheableKey::create | ( | const PRIM | value | ) | [inline, static, inherited] |
Factory method that creates the key type that matches the type of value.
For customer defined derivations of CacheableKey, the method gemfire::createKey may be overloaded. For pointer types (e.g. char*) the method gemfire::createKeyArr may be overloaded.
Reimplemented from gemfire::Serializable.
| static CacheableFileNamePtr gemfire::CacheableFileName::create | ( | const wchar_t * | value, | |
| size_t | len | |||
| ) | [inline, static] |
Factory method for creating an instance of CacheableFileName from a wide-character C string of given length.
Throw IllegalArgumentException if the converted value's length is greater than 64K bytes.
Reimplemented from gemfire::CacheableString.
| static CacheableFileNamePtr gemfire::CacheableFileName::create | ( | const wchar_t * | value | ) | [inline, static] |
Factory method for creating an instance of CacheableFileName from a wide-character null terminated C string.
Throw IllegalArgumentException if the converted value's length is greater than 64K bytes.
Reimplemented from gemfire::CacheableString.
| static CacheableFileNamePtr gemfire::CacheableFileName::create | ( | const char * | value, | |
| size_t | len | |||
| ) | [inline, static] |
Factory method for creating an instance of CacheableFileName from a C string of given length.
Reimplemented from gemfire::CacheableString.
| static CacheableFileNamePtr gemfire::CacheableFileName::create | ( | const char * | value | ) | [inline, static] |
Factory method for creating an instance of CacheableFileName from a null terminated C string.
Reimplemented from gemfire::CacheableString.
| static Serializable* gemfire::CacheableFileName::createDeserializable | ( | ) | [inline, static] |
creation function for filenames.
Reimplemented from gemfire::CacheableString.
| static Serializable* gemfire::CacheableString::createDeserializableHuge | ( | ) | [static, inherited] |
creation function for strings.
| static CacheableStringPtr gemfire::CacheableString::createNoCopy | ( | wchar_t * | value, | |
| size_t | len | |||
| ) | [inline, static, inherited] |
Factory method for creating an instance of CacheableString from a wide-character C string of given length by taking ownership of the string without making a copy.
CAUTION: use this only when you really know what you are doing.
Throw IllegalArgumentException if the converted value's length is greater than 64K bytes.
| static CacheableStringPtr gemfire::CacheableString::createNoCopy | ( | char * | value, | |
| size_t | len | |||
| ) | [inline, static, inherited] |
Factory method for creating an instance of CacheableString from a C string of given length by taking ownership of the string without making a copy.
CAUTION: use this only when you really know what you are doing.
Throw IllegalArgumentException if the value's length is greater than 64K bytes.
| static Serializable* gemfire::CacheableString::createUTFDeserializable | ( | ) | [static, inherited] |
creation function for wide strings.
| static Serializable* gemfire::CacheableString::createUTFDeserializableHuge | ( | ) | [static, inherited] |
creation function for wide strings.
| virtual int8_t gemfire::Serializable::DSFID | ( | ) | const [virtual, inherited] |
return the Data Serialization Fixed ID type. This is used to determine what instance type to create and deserialize into.
Note that this should not be overridden by custom implementations and is reserved only for builtin types.
Reimplemented in gemfire::CacheableUndefined, and gemfire::Struct.
| virtual Serializable* gemfire::CacheableFileName::fromData | ( | DataInput & | input | ) | [virtual] |
deserialize this object Throw IllegalArgumentException if the packed CacheableString is not less than 64K bytes.
Reimplemented from gemfire::CacheableString.
| virtual uint32_t gemfire::CacheableString::hashcode | ( | ) | const [virtual, inherited] |
| bool gemfire::CacheableString::isWideString | ( | ) | const [inline, inherited] |
Returns true if the underlying string is a wide-character string.
| uint32_t gemfire::CacheableString::length | ( | ) | const [inline, inherited] |
Return the length of the contained string.
| virtual size_t gemfire::CacheableString::logString | ( | char * | buffer, | |
| size_t | maxLength | |||
| ) | const [virtual, inherited] |
| virtual uint32_t gemfire::CacheableString::objectSize | ( | ) | const [virtual, inherited] |
return the size in bytes of the instance being serialized. This is used to determine whether the cache is using up more physical memory than it has been configured to use. The method can return zero if the user does not require the ability to control cache memory utilization.
Implements gemfire::Serializable.
| virtual bool gemfire::CacheableString::operator== | ( | const CacheableKey & | other | ) | const [virtual, inherited] |
| void gemfire::SharedBase::preserveSB | ( | ) | const [inherited] |
Atomically increment reference count.
| int32_t gemfire::SharedBase::refCount | ( | ) | [inline, inherited] |
| static void gemfire::Serializable::registerType | ( | TypeFactoryMethod | creationFunction | ) | [static, inherited] |
register an instance factory method for a given type. During registration the factory will be invoked to extract the typeId to associate with this function.
| IllegalStateException | if the typeId has already been registered, or there is an error in registering the type; check errno for more information in the latter case. |
| void gemfire::SharedBase::releaseSB | ( | ) | const [inherited] |
Atomically decrement reference count, the SharedBase object is automatically deleted when its reference count goes to zero.
| virtual void gemfire::CacheableFileName::toData | ( | DataOutput & | output | ) | const [virtual] |
serialize this object
Reimplemented from gemfire::CacheableString.
| virtual CacheableStringPtr gemfire::CacheableString::toString | ( | ) | const [inline, virtual, inherited] |
Display this object as 'string', which depends on the implementation in the subclasses.
The default implementation renders the classname.
The return value may be a temporary, so the caller has to ensure that the SharedPtr count does not go down to zero by storing the result in a variable or otherwise.
Reimplemented from gemfire::Serializable.
| const char* gemfire::CacheableString::toString | ( | ) | [inline, inherited] |
Display this object as c string.
In this case, it returns the same value as asChar( ) when underlying type is a char* and returns the same value as asWChar( ) cast to char* when the underlying type is a wchar_t*. To handle this correctly the user should find the actual type by calling typeId( ) or isWideString( ) and cast to the correct type accordingly. Note: this is a debugging API, not intended for getting the exact value of the CacheableString. In a future release this may return a more summary representation. This is historical. It is preferred that the user call logString or asChar/asWChar, depending on the need.
| virtual int8_t gemfire::CacheableFileName::typeId | ( | ) | const [virtual] |
return the typeId byte of the instance being serialized. This is used by deserialization to determine what instance type to create and deserialize into.
Reimplemented from gemfire::CacheableString.