|
OPeNDAP Hyrax Back End Server (BES)
Updated for version 3.8.3
|
A Decorator Pattern for wrapping a libdap::Array in order to change its name efficiently in the face of buggy subclasses we cannot change. More...
#include <RenamedArrayWrapper.h>


Public Member Functions | |
| virtual void | add_constraint (Dim_iter i, int start, int stride, int stop) |
| Wrappers. More... | |
| virtual void | add_var (BaseType *bt, Part part=nil) |
| virtual unsigned int | buf2val (void **val) |
| virtual bool | check_semantics (string &msg, bool all=false) |
| virtual void | clear_constraint () |
| virtual bool | deserialize (UnMarshaller &um, DDS *dds, bool reuse=false) |
| virtual void | dump (ostream &strm) const |
| virtual int | element_count (bool leaves=false) |
| virtual libdap::AttrTable & | get_attr_table () |
| We don't keep our own... More... | |
| virtual BaseType * | get_parent () const |
| virtual void | intern_data (ConstraintEvaluator &eval, DDS &dds) |
| virtual bool | is_constructor_type () const |
| virtual bool | is_in_selection () |
| virtual bool | is_simple_type () const |
| virtual bool | is_vector_type () const |
| RenamedArrayWrapper & | operator= (const RenamedArrayWrapper &rhs) |
| virtual bool | ops (BaseType *b, int op) |
| virtual void | print_decl (ostream &out, string space=" ", bool print_semi=true, bool constraint_info=false, bool constrained=false) |
| virtual void | print_val (ostream &out, string space="", bool print_decl_p=true) |
| virtual void | print_xml (ostream &out, string space=" ", bool constrained=false) |
| virtual RenamedArrayWrapper * | ptr_duplicate () |
| virtual bool | read () |
| virtual bool | read_p () |
| RenamedArrayWrapper () | |
| RenamedArrayWrapper (const RenamedArrayWrapper &proto) | |
| RenamedArrayWrapper (libdap::Array *toBeWrapped) | |
| Hand off the given Array* to be wrapped by this class. More... | |
| virtual void | reset_constraint () |
| virtual bool | send_p () |
| virtual bool | serialize (ConstraintEvaluator &eval, DDS &dds, Marshaller &m, bool ce_eval=true) |
| virtual void | set_attr_table (const libdap::AttrTable &at) |
| virtual void | set_in_selection (bool state) |
| virtual void | set_parent (BaseType *parent) |
| Keep these in sync so it doesn't matter where we get the parent from... More... | |
| virtual void | set_read_p (bool state) |
| virtual void | set_send_p (bool state) |
| virtual void | set_synthesized_p (bool state) |
| virtual bool | set_value (dods_byte *val, int sz) |
| virtual bool | set_value (vector< dods_byte > &val, int sz) |
| virtual bool | set_value (dods_int16 *val, int sz) |
| virtual bool | set_value (vector< dods_int16 > &val, int sz) |
| virtual bool | set_value (dods_uint16 *val, int sz) |
| virtual bool | set_value (vector< dods_uint16 > &val, int sz) |
| virtual bool | set_value (dods_int32 *val, int sz) |
| virtual bool | set_value (vector< dods_int32 > &val, int sz) |
| virtual bool | set_value (dods_uint32 *val, int sz) |
| virtual bool | set_value (vector< dods_uint32 > &val, int sz) |
| virtual bool | set_value (dods_float32 *val, int sz) |
| virtual bool | set_value (vector< dods_float32 > &val, int sz) |
| virtual bool | set_value (dods_float64 *val, int sz) |
| virtual bool | set_value (vector< dods_float64 > &val, int sz) |
| virtual bool | set_value (string *val, int sz) |
| virtual bool | set_value (vector< string > &val, int sz) |
| virtual bool | synthesized_p () |
| virtual string | toString () |
| virtual string | toString () const |
| virtual unsigned int | val2buf (void *val, bool reuse=false) |
| virtual void | value (dods_byte *b) const |
| virtual void | value (dods_int16 *b) const |
| virtual void | value (dods_uint16 *b) const |
| virtual void | value (dods_int32 *b) const |
| virtual void | value (dods_uint32 *b) const |
| virtual void | value (dods_float32 *b) const |
| virtual void | value (dods_float64 *b) const |
| virtual void | value (vector< string > &b) const |
| virtual void * | value () |
| virtual BaseType * | var (const string &name="", bool exact_match=true, btp_stack *s=0) |
| virtual BaseType * | var (const string &name, btp_stack &s) |
| virtual unsigned int | width (bool constrained=false) |
| virtual | ~RenamedArrayWrapper () |
A Decorator Pattern for wrapping a libdap::Array in order to change its name efficiently in the face of buggy subclasses we cannot change.
Unfortunately, this is needed to get around problems with subclasses requiring the old name for lazy loads even though set_name was called. This causes them to exception, which is bad. In particular, NCArray doesn't handle set_name properly and will fail to serialize.
Rather than seek out and make changes to fix these bugs, the temporary solution will be to wrap the Array to rename in this class. Almost all virtual functions will be passed through to the wrapped array, which will retain its original name for purposes of read(), but will be forced to use the new name when serializing.
Definition at line 63 of file RenamedArrayWrapper.h.
| ncml_module::RenamedArrayWrapper::RenamedArrayWrapper | ( | ) |
Definition at line 49 of file RenamedArrayWrapper.cc.
Referenced by ptr_duplicate().
| ncml_module::RenamedArrayWrapper::RenamedArrayWrapper | ( | const RenamedArrayWrapper & | proto | ) |
Definition at line 56 of file RenamedArrayWrapper.cc.
| ncml_module::RenamedArrayWrapper::RenamedArrayWrapper | ( | libdap::Array * | toBeWrapped | ) |
Hand off the given Array* to be wrapped by this class.
The memory is relinquished to this class.
Definition at line 64 of file RenamedArrayWrapper.cc.
References NCML_ASSERT_MSG, and set_read_p().

|
virtual |
Definition at line 74 of file RenamedArrayWrapper.cc.
|
virtual |
Wrappers.
Definition at line 101 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 267 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 354 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 273 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 120 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 608 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 143 of file RenamedArrayWrapper.cc.
References toString().

|
virtual |
Definition at line 181 of file RenamedArrayWrapper.cc.
|
virtual |
We don't keep our own...
Definition at line 214 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 247 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 566 of file RenamedArrayWrapper.cc.
References set_read_p().

|
virtual |
Definition at line 161 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 226 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 149 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 155 of file RenamedArrayWrapper.cc.
| RenamedArrayWrapper & ncml_module::RenamedArrayWrapper::operator= | ( | const RenamedArrayWrapper & | rhs | ) |
Definition at line 86 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 279 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 323 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 368 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 336 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 80 of file RenamedArrayWrapper.cc.
References RenamedArrayWrapper().

|
virtual |
Definition at line 555 of file RenamedArrayWrapper.cc.
References set_read_p().

|
virtual |
Definition at line 187 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 110 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 200 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 585 of file RenamedArrayWrapper.cc.
References BESDEBUG, and set_read_p().

|
virtual |
Definition at line 220 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 232 of file RenamedArrayWrapper.cc.
|
virtual |
Keep these in sync so it doesn't matter where we get the parent from...
Definition at line 240 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 193 of file RenamedArrayWrapper.cc.
Referenced by intern_data(), read(), RenamedArrayWrapper(), and serialize().
|
virtual |
Definition at line 206 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 173 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 379 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 386 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 393 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 400 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 407 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 414 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 421 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 428 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 435 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 442 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 449 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 456 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 463 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 470 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 477 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 484 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 167 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 128 of file RenamedArrayWrapper.cc.
Referenced by dump().
|
virtual |
Definition at line 134 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 361 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 491 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 498 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 505 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 512 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 519 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 526 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 533 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 540 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 547 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 253 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 261 of file RenamedArrayWrapper.cc.
|
virtual |
Definition at line 347 of file RenamedArrayWrapper.cc.