Beispiel #1
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     port = FixSizedTypesCodec.decode_int(initial_frame.buf, _PORT_DECODE_OFFSET)
     host = StringCodec.decode(msg)
     CodecUtil.fast_forward_to_end_frame(msg)
     return Address(host, port)
def encode_request(group_id, name, old_value, new_value):
    buf = create_initial_buffer(_REQUEST_INITIAL_FRAME_SIZE, _REQUEST_MESSAGE_TYPE)
    RaftGroupIdCodec.encode(buf, group_id)
    StringCodec.encode(buf, name)
    CodecUtil.encode_nullable(buf, old_value, DataCodec.encode)
    CodecUtil.encode_nullable(buf, new_value, DataCodec.encode, True)
    return OutboundMessage(buf, False)
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     unique_key_transformation = FixSizedTypesCodec.decode_int(initial_frame.buf, _UNIQUE_KEY_TRANSFORMATION_DECODE_OFFSET)
     unique_key = StringCodec.decode(msg)
     CodecUtil.fast_forward_to_end_frame(msg)
     return BitmapIndexOptions(unique_key, unique_key_transformation)
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     cost = FixSizedTypesCodec.decode_long(initial_frame.buf,
                                           _COST_DECODE_OFFSET)
     creation_time = FixSizedTypesCodec.decode_long(
         initial_frame.buf, _CREATION_TIME_DECODE_OFFSET)
     expiration_time = FixSizedTypesCodec.decode_long(
         initial_frame.buf, _EXPIRATION_TIME_DECODE_OFFSET)
     hits = FixSizedTypesCodec.decode_long(initial_frame.buf,
                                           _HITS_DECODE_OFFSET)
     last_access_time = FixSizedTypesCodec.decode_long(
         initial_frame.buf, _LAST_ACCESS_TIME_DECODE_OFFSET)
     last_stored_time = FixSizedTypesCodec.decode_long(
         initial_frame.buf, _LAST_STORED_TIME_DECODE_OFFSET)
     last_update_time = FixSizedTypesCodec.decode_long(
         initial_frame.buf, _LAST_UPDATE_TIME_DECODE_OFFSET)
     version = FixSizedTypesCodec.decode_long(initial_frame.buf,
                                              _VERSION_DECODE_OFFSET)
     ttl = FixSizedTypesCodec.decode_long(initial_frame.buf,
                                          _TTL_DECODE_OFFSET)
     max_idle = FixSizedTypesCodec.decode_long(initial_frame.buf,
                                               _MAX_IDLE_DECODE_OFFSET)
     key = DataCodec.decode(msg)
     value = DataCodec.decode(msg)
     CodecUtil.fast_forward_to_end_frame(msg)
     return SimpleEntryView(key, value, cost, creation_time,
                            expiration_time, hits, last_access_time,
                            last_stored_time, last_update_time, version,
                            ttl, max_idle)
Beispiel #5
0
 def decode(msg):
     msg.next_frame()
     type_name = StringCodec.decode(msg)
     fields_list = ListMultiFrameCodec.decode(msg,
                                              FieldDescriptorCodec.decode)
     CodecUtil.fast_forward_to_end_frame(msg)
     return Schema(type_name, fields_list)
Beispiel #6
0
 def decode(msg):
     msg.next_frame()
     anchor_page_list = ListIntegerCodec.decode(msg)
     anchor_data_list = EntryListCodec.decode(msg, DataCodec.decode,
                                              DataCodec.decode)
     CodecUtil.fast_forward_to_end_frame(msg)
     return AnchorDataListHolder(anchor_page_list, anchor_data_list)
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     kind = FixSizedTypesCodec.decode_int(initial_frame.buf,
                                          _KIND_DECODE_OFFSET)
     name = StringCodec.decode(msg)
     CodecUtil.fast_forward_to_end_frame(msg)
     return FieldDescriptor(name, kind)
Beispiel #8
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     type = FixSizedTypesCodec.decode_int(initial_frame.buf,
                                          _TYPE_DECODE_OFFSET)
     identifier = CodecUtil.decode_nullable(msg, StringCodec.decode)
     CodecUtil.fast_forward_to_end_frame(msg)
     return EndpointQualifier(type, identifier)
Beispiel #9
0
def encode_request(group_id, name, new_value, return_old_value):
    buf = create_initial_buffer(_REQUEST_INITIAL_FRAME_SIZE,
                                _REQUEST_MESSAGE_TYPE)
    FixSizedTypesCodec.encode_boolean(buf, _REQUEST_RETURN_OLD_VALUE_OFFSET,
                                      return_old_value)
    RaftGroupIdCodec.encode(buf, group_id)
    StringCodec.encode(buf, name)
    CodecUtil.encode_nullable(buf, new_value, DataCodec.encode, True)
    return OutboundMessage(buf, False)
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     member_id_high = FixSizedTypesCodec.decode_long(initial_frame.buf, _MEMBER_ID_HIGH_DECODE_OFFSET)
     member_id_low = FixSizedTypesCodec.decode_long(initial_frame.buf, _MEMBER_ID_LOW_DECODE_OFFSET)
     local_id_high = FixSizedTypesCodec.decode_long(initial_frame.buf, _LOCAL_ID_HIGH_DECODE_OFFSET)
     local_id_low = FixSizedTypesCodec.decode_long(initial_frame.buf, _LOCAL_ID_LOW_DECODE_OFFSET)
     CodecUtil.fast_forward_to_end_frame(msg)
     return _SqlQueryId(member_id_high, member_id_low, local_id_high, local_id_low)
Beispiel #11
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     error_code = FixSizedTypesCodec.decode_int(initial_frame.buf, _ERROR_CODE_DECODE_OFFSET)
     class_name = StringCodec.decode(msg)
     message = CodecUtil.decode_nullable(msg, StringCodec.decode)
     stack_trace_elements = ListMultiFrameCodec.decode(msg, StackTraceElementCodec.decode)
     CodecUtil.fast_forward_to_end_frame(msg)
     return ErrorHolder(error_code, class_name, message, stack_trace_elements)
def encode_request(name, start_sequence, min_count, max_count, filter):
    buf = create_initial_buffer(_REQUEST_INITIAL_FRAME_SIZE,
                                _REQUEST_MESSAGE_TYPE)
    FixSizedTypesCodec.encode_long(buf, _REQUEST_START_SEQUENCE_OFFSET,
                                   start_sequence)
    FixSizedTypesCodec.encode_int(buf, _REQUEST_MIN_COUNT_OFFSET, min_count)
    FixSizedTypesCodec.encode_int(buf, _REQUEST_MAX_COUNT_OFFSET, max_count)
    StringCodec.encode(buf, name)
    CodecUtil.encode_nullable(buf, filter, DataCodec.encode, True)
    return OutboundMessage(buf, True)
def decode_response(msg):
    initial_frame = msg.next_frame()
    response = dict()
    response["update_count"] = FixSizedTypesCodec.decode_long(
        initial_frame.buf, _RESPONSE_UPDATE_COUNT_OFFSET)
    response["row_metadata"] = ListMultiFrameCodec.decode_nullable(
        msg, SqlColumnMetadataCodec.decode)
    response["row_page"] = CodecUtil.decode_nullable(msg, SqlPageCodec.decode)
    response["error"] = CodecUtil.decode_nullable(msg, SqlErrorCodec.decode)
    return response
Beispiel #14
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     seed = FixSizedTypesCodec.decode_long(initial_frame.buf,
                                           _SEED_DECODE_OFFSET)
     id = FixSizedTypesCodec.decode_long(initial_frame.buf,
                                         _ID_DECODE_OFFSET)
     name = StringCodec.decode(msg)
     CodecUtil.fast_forward_to_end_frame(msg)
     return RaftGroupId(name, seed, id)
Beispiel #15
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     major = FixSizedTypesCodec.decode_byte(initial_frame.buf,
                                            _MAJOR_DECODE_OFFSET)
     minor = FixSizedTypesCodec.decode_byte(initial_frame.buf,
                                            _MINOR_DECODE_OFFSET)
     patch = FixSizedTypesCodec.decode_byte(initial_frame.buf,
                                            _PATCH_DECODE_OFFSET)
     CodecUtil.fast_forward_to_end_frame(msg)
     return MemberVersion(major, minor, patch)
Beispiel #16
0
 def encode(buf, endpoint_qualifier, is_final=False):
     initial_frame_buf = create_initial_buffer_custom(_INITIAL_FRAME_SIZE)
     FixSizedTypesCodec.encode_int(initial_frame_buf, _TYPE_ENCODE_OFFSET,
                                   endpoint_qualifier.type)
     buf.extend(initial_frame_buf)
     CodecUtil.encode_nullable(buf, endpoint_qualifier.identifier,
                               StringCodec.encode)
     if is_final:
         buf.extend(END_FINAL_FRAME_BUF)
     else:
         buf.extend(END_FRAME_BUF)
Beispiel #17
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     line_number = FixSizedTypesCodec.decode_int(
         initial_frame.buf, _LINE_NUMBER_DECODE_OFFSET)
     class_name = StringCodec.decode(msg)
     method_name = StringCodec.decode(msg)
     file_name = CodecUtil.decode_nullable(msg, StringCodec.decode)
     CodecUtil.fast_forward_to_end_frame(msg)
     return StackTraceElement(class_name, method_name, file_name,
                              line_number)
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     type = FixSizedTypesCodec.decode_int(initial_frame.buf,
                                          _TYPE_DECODE_OFFSET)
     name = CodecUtil.decode_nullable(msg, StringCodec.decode)
     attributes = ListMultiFrameCodec.decode(msg, StringCodec.decode)
     bitmap_index_options = CodecUtil.decode_nullable(
         msg, BitmapIndexOptionsCodec.decode)
     CodecUtil.fast_forward_to_end_frame(msg)
     return IndexConfig(name, type, attributes, bitmap_index_options)
Beispiel #19
0
 def encode(buf, sql_error, is_final=False):
     initial_frame_buf = create_initial_buffer_custom(_INITIAL_FRAME_SIZE)
     FixSizedTypesCodec.encode_int(initial_frame_buf, _CODE_ENCODE_OFFSET, sql_error.code)
     FixSizedTypesCodec.encode_uuid(initial_frame_buf, _ORIGINATING_MEMBER_ID_ENCODE_OFFSET, sql_error.originating_member_id)
     buf.extend(initial_frame_buf)
     CodecUtil.encode_nullable(buf, sql_error.message, StringCodec.encode)
     CodecUtil.encode_nullable(buf, sql_error.suggestion, StringCodec.encode)
     if is_final:
         buf.extend(END_FINAL_FRAME_BUF)
     else:
         buf.extend(END_FRAME_BUF)
Beispiel #20
0
 def encode(buf, error_holder, is_final=False):
     initial_frame_buf = create_initial_buffer_custom(_INITIAL_FRAME_SIZE)
     FixSizedTypesCodec.encode_int(initial_frame_buf, _ERROR_CODE_ENCODE_OFFSET, error_holder.error_code)
     buf.extend(initial_frame_buf)
     StringCodec.encode(buf, error_holder.class_name)
     CodecUtil.encode_nullable(buf, error_holder.message, StringCodec.encode)
     ListMultiFrameCodec.encode(buf, error_holder.stack_trace_elements, StackTraceElementCodec.encode)
     if is_final:
         buf.extend(END_FINAL_FRAME_BUF)
     else:
         buf.extend(END_FRAME_BUF)
Beispiel #21
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     page_size = FixSizedTypesCodec.decode_int(initial_frame.buf, _PAGE_SIZE_DECODE_OFFSET)
     page = FixSizedTypesCodec.decode_int(initial_frame.buf, _PAGE_DECODE_OFFSET)
     iteration_type_id = FixSizedTypesCodec.decode_byte(initial_frame.buf, _ITERATION_TYPE_ID_DECODE_OFFSET)
     anchor_data_list_holder = AnchorDataListHolderCodec.decode(msg)
     predicate_data = CodecUtil.decode_nullable(msg, DataCodec.decode)
     comparator_data = CodecUtil.decode_nullable(msg, DataCodec.decode)
     partition_key_data = CodecUtil.decode_nullable(msg, DataCodec.decode)
     CodecUtil.fast_forward_to_end_frame(msg)
     return PagingPredicateHolder(anchor_data_list_holder, predicate_data, comparator_data, page_size, page, iteration_type_id, partition_key_data)
Beispiel #22
0
def encode_request(name, start_sequence, min_size, max_size, predicate,
                   projection):
    buf = create_initial_buffer(_REQUEST_INITIAL_FRAME_SIZE,
                                _REQUEST_MESSAGE_TYPE)
    FixSizedTypesCodec.encode_long(buf, _REQUEST_START_SEQUENCE_OFFSET,
                                   start_sequence)
    FixSizedTypesCodec.encode_int(buf, _REQUEST_MIN_SIZE_OFFSET, min_size)
    FixSizedTypesCodec.encode_int(buf, _REQUEST_MAX_SIZE_OFFSET, max_size)
    StringCodec.encode(buf, name)
    CodecUtil.encode_nullable(buf, predicate, DataCodec.encode)
    CodecUtil.encode_nullable(buf, projection, DataCodec.encode, True)
    return OutboundMessage(buf, True)
def handle(msg, handle_entry_event=None):
    message_type = msg.get_message_type()
    if message_type == _EVENT_ENTRY_MESSAGE_TYPE and handle_entry_event is not None:
        initial_frame = msg.next_frame()
        event_type = FixSizedTypesCodec.decode_int(initial_frame.buf, _EVENT_ENTRY_EVENT_TYPE_OFFSET)
        uuid = FixSizedTypesCodec.decode_uuid(initial_frame.buf, _EVENT_ENTRY_UUID_OFFSET)
        number_of_affected_entries = FixSizedTypesCodec.decode_int(initial_frame.buf, _EVENT_ENTRY_NUMBER_OF_AFFECTED_ENTRIES_OFFSET)
        key = CodecUtil.decode_nullable(msg, DataCodec.decode)
        value = CodecUtil.decode_nullable(msg, DataCodec.decode)
        old_value = CodecUtil.decode_nullable(msg, DataCodec.decode)
        merging_value = CodecUtil.decode_nullable(msg, DataCodec.decode)
        handle_entry_event(key, value, old_value, merging_value, event_type, uuid, number_of_affected_entries)
        return
Beispiel #24
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     code = FixSizedTypesCodec.decode_int(initial_frame.buf, _CODE_DECODE_OFFSET)
     originating_member_id = FixSizedTypesCodec.decode_uuid(initial_frame.buf, _ORIGINATING_MEMBER_ID_DECODE_OFFSET)
     message = CodecUtil.decode_nullable(msg, StringCodec.decode)
     is_suggestion_exists = False
     suggestion = None
     if not msg.peek_next_frame().is_end_frame():
         suggestion = CodecUtil.decode_nullable(msg, StringCodec.decode)
         is_suggestion_exists = True
     CodecUtil.fast_forward_to_end_frame(msg)
     return _SqlError(code, message, originating_member_id, is_suggestion_exists, suggestion)
    def test_fast_forward(self):
        message = InboundMessage(BEGIN_FRAME.copy())

        # New custom-typed parameter with its own begin and end frames
        message.add_frame(BEGIN_FRAME.copy())
        message.add_frame(Frame(bytearray(0), 0))
        message.add_frame(END_FRAME.copy())

        message.add_frame(END_FRAME.copy())

        # begin frame
        message.next_frame()
        CodecUtil.fast_forward_to_end_frame(message)
        self.assertFalse(message.has_next_frame())
Beispiel #26
0
 def encode(buf, stack_trace_element, is_final=False):
     initial_frame_buf = create_initial_buffer_custom(_INITIAL_FRAME_SIZE)
     FixSizedTypesCodec.encode_int(initial_frame_buf,
                                   _LINE_NUMBER_ENCODE_OFFSET,
                                   stack_trace_element.line_number)
     buf.extend(initial_frame_buf)
     StringCodec.encode(buf, stack_trace_element.class_name)
     StringCodec.encode(buf, stack_trace_element.method_name)
     CodecUtil.encode_nullable(buf, stack_trace_element.file_name,
                               StringCodec.encode)
     if is_final:
         buf.extend(END_FINAL_FRAME_BUF)
     else:
         buf.extend(END_FRAME_BUF)
 def encode(buf, index_config, is_final=False):
     initial_frame_buf = create_initial_buffer_custom(_INITIAL_FRAME_SIZE)
     FixSizedTypesCodec.encode_int(initial_frame_buf, _TYPE_ENCODE_OFFSET,
                                   index_config.type)
     buf.extend(initial_frame_buf)
     CodecUtil.encode_nullable(buf, index_config.name, StringCodec.encode)
     ListMultiFrameCodec.encode(buf, index_config.attributes,
                                StringCodec.encode)
     CodecUtil.encode_nullable(buf, index_config.bitmap_index_options,
                               BitmapIndexOptionsCodec.encode)
     if is_final:
         buf.extend(END_FINAL_FRAME_BUF)
     else:
         buf.extend(END_FRAME_BUF)
Beispiel #28
0
 def decode(msg):
     msg.next_frame()
     initial_frame = msg.next_frame()
     type = FixSizedTypesCodec.decode_int(initial_frame.buf,
                                          _TYPE_DECODE_OFFSET)
     is_nullable_exists = False
     nullable = False
     if len(initial_frame.buf
            ) >= _NULLABLE_DECODE_OFFSET + BOOLEAN_SIZE_IN_BYTES:
         nullable = FixSizedTypesCodec.decode_boolean(
             initial_frame.buf, _NULLABLE_DECODE_OFFSET)
         is_nullable_exists = True
     name = StringCodec.decode(msg)
     CodecUtil.fast_forward_to_end_frame(msg)
     return SqlColumnMetadata(name, type, is_nullable_exists, nullable)
def encode_request(sql, parameters, timeout_millis, cursor_buffer_size, schema,
                   expected_result_type, query_id):
    buf = create_initial_buffer(_REQUEST_INITIAL_FRAME_SIZE,
                                _REQUEST_MESSAGE_TYPE)
    FixSizedTypesCodec.encode_long(buf, _REQUEST_TIMEOUT_MILLIS_OFFSET,
                                   timeout_millis)
    FixSizedTypesCodec.encode_int(buf, _REQUEST_CURSOR_BUFFER_SIZE_OFFSET,
                                  cursor_buffer_size)
    FixSizedTypesCodec.encode_byte(buf, _REQUEST_EXPECTED_RESULT_TYPE_OFFSET,
                                   expected_result_type)
    StringCodec.encode(buf, sql)
    ListMultiFrameCodec.encode_contains_nullable(buf, parameters,
                                                 DataCodec.encode)
    CodecUtil.encode_nullable(buf, schema, StringCodec.encode)
    SqlQueryIdCodec.encode(buf, query_id, True)
    return OutboundMessage(buf, False)
def encode_request(cluster_name, username, password, uuid, client_type,
                   serialization_version, client_hazelcast_version,
                   client_name, labels):
    buf = create_initial_buffer(_REQUEST_INITIAL_FRAME_SIZE,
                                _REQUEST_MESSAGE_TYPE)
    FixSizedTypesCodec.encode_uuid(buf, _REQUEST_UUID_OFFSET, uuid)
    FixSizedTypesCodec.encode_byte(buf, _REQUEST_SERIALIZATION_VERSION_OFFSET,
                                   serialization_version)
    StringCodec.encode(buf, cluster_name)
    CodecUtil.encode_nullable(buf, username, StringCodec.encode)
    CodecUtil.encode_nullable(buf, password, StringCodec.encode)
    StringCodec.encode(buf, client_type)
    StringCodec.encode(buf, client_hazelcast_version)
    StringCodec.encode(buf, client_name)
    ListMultiFrameCodec.encode(buf, labels, StringCodec.encode, True)
    return OutboundMessage(buf, True)