#include <cromp_transaction.h>
Public Types | |
| enum | outcomes { OKAY = common::OKAY, GARBAGE = common::GARBAGE, PARTIAL = common::PARTIAL, WAY_TOO_SMALL, header, ILLEGAL_LENGTH, allow } |
Public Member Functions | |
| virtual | ~cromp_transaction () |
| IMPLEMENT_CLASS_NAME ("cromp_transaction") | |
Static Public Member Functions | |
| static const char * | outcome_name (const outcome &to_name) |
| static void | flatten (byte_array &packed_form, const infoton &request, const octopus_request_id &id) |
| static bool | unflatten (byte_array &packed_form, byte_array &still_flat, octopus_request_id &id) |
| static int | minimum_flat_size (const octopus_request_id &id) |
| static int | minimum_flat_size (const string_array &classifier, const octopus_request_id &id) |
| static bool | resynchronize (byte_array &packed_form) |
| static outcome | peek_header (const byte_array &packed_form, int &length) |
Definition at line 34 of file cromp_transaction.h.
Definition at line 40 of file cromp_transaction.h.
| cromp_transaction::~cromp_transaction | ( | ) | [virtual] |
Definition at line 53 of file cromp_transaction.cpp.
| cromp_transaction::IMPLEMENT_CLASS_NAME | ( | "cromp_transaction" | ) |
| const char * cromp_transaction::outcome_name | ( | const outcome & | to_name | ) | [static] |
Definition at line 56 of file cromp_transaction.cpp.
References ILLEGAL_LENGTH, communication_commons::outcome_name(), outcome::value(), and WAY_TOO_SMALL.
| void cromp_transaction::flatten | ( | byte_array & | packed_form, | |
| const infoton & | request, | |||
| const octopus_request_id & | id | |||
| ) | [static] |
Definition at line 103 of file cromp_transaction.cpp.
References continuable_error, copy(), cromp_name_array(), infoton::fast_pack(), FUNCDEF, array< contents >::last(), array< contents >::length(), LOG, static_class_name, array< contents >::subarray(), and unflatten().
Referenced by cromp_common::pack_and_ship().
| bool cromp_transaction::unflatten | ( | byte_array & | packed_form, | |
| byte_array & | still_flat, | |||
| octopus_request_id & | id | |||
| ) | [static] |
Definition at line 149 of file cromp_transaction.cpp.
References continuable_error, FUNCDEF, array< contents >::length(), LOG, OKAY, octopus_request_id::packed_size(), peek_header(), array< contents >::reset(), static_class_name, array< contents >::subarray(), octopus_request_id::unpack(), and array< contents >::zap().
Referenced by flatten().
| int cromp_transaction::minimum_flat_size | ( | const octopus_request_id & | id | ) | [static] |
Definition at line 89 of file cromp_transaction.cpp.
References cromp_name_array(), and array< contents >::length().
Referenced by minimum_flat_size().
| int cromp_transaction::minimum_flat_size | ( | const string_array & | classifier, | |
| const octopus_request_id & | id | |||
| ) | [static] |
Definition at line 95 of file cromp_transaction.cpp.
References infoton::fast_pack_overhead(), and minimum_flat_size().
| bool cromp_transaction::resynchronize | ( | byte_array & | packed_form | ) | [static] |
Definition at line 186 of file cromp_transaction.cpp.
References CHECK_LENGTH, FUNCDEF, parser_bits::is_hexadecimal(), array< contents >::length(), LOG, and WHACK_AND_GO.
| outcome cromp_transaction::peek_header | ( | const byte_array & | packed_form, | |
| int & | length | |||
| ) | [static] |
Definition at line 220 of file cromp_transaction.cpp.
References FUNCDEF, GARBAGE, ILLEGAL_LENGTH, parser_bits::is_hexadecimal(), array< contents >::length(), LOG, MAXIMUM_TRANSACTION, OKAY, PARTIAL, istring::s(), and WAY_TOO_SMALL.
Referenced by unflatten().
1.5.1