コード例 #1
0
func (self *ProtobufRequestHandler) handleSequenceNumberRequest(request *protocol.Request, conn net.Conn) {
	replicationFactor := uint8(*request.ReplicationFactor)
	var err error
	lastKnownSequenceNumber, err := self.coordinator.GetLastSequenceNumber(replicationFactor, *request.OriginatingServerId, *request.OwnerServerId)
	var response *protocol.Response
	if err != nil {
		response = &protocol.Response{Type: &sequenceNumberResponse, Request: request, RequestId: request.Id, ErrorCode: &internalError}
	} else {
		response = &protocol.Response{Type: &sequenceNumberResponse, Request: request, RequestId: request.Id}
		request.LastKnownSequenceNumber = &lastKnownSequenceNumber
	}
	self.WriteResponse(conn, response)
}