Skip to content

Commit

Permalink
Remove private struct members from BdxMessage types
Browse files Browse the repository at this point in the history
- Pass in the message type directly during logging
  • Loading branch information
carol-apple committed Nov 8, 2021
1 parent a8b972d commit 4aaba2d
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 66 deletions.
16 changes: 8 additions & 8 deletions src/protocols/bdx/BdxMessages.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -167,12 +167,12 @@ size_t TransferInit::MessageSize() const
}

#if CHIP_AUTOMATION_LOGGING
void TransferInit::LogMessage() const
void TransferInit::LogMessage(bdx::MessageType messageType) const
{
char fd[kMaxFileDesignatorLen];
snprintf(fd, sizeof(fd), "%s", FileDesignator);

switch (mMessageType)
switch (messageType)
{
case MessageType::SendInit:
ChipLogAutomation("SendInit");
Expand Down Expand Up @@ -275,7 +275,7 @@ size_t SendAccept::MessageSize() const
}

#if CHIP_AUTOMATION_LOGGING
void SendAccept::LogMessage() const
void SendAccept::LogMessage(bdx::MessageType messageType) const
{
ChipLogAutomation("SendAccept");
ChipLogAutomation(" Transfer Control: 0x%X", static_cast<unsigned>(TransferCtlFlags.Raw() | Version));
Expand Down Expand Up @@ -417,7 +417,7 @@ size_t ReceiveAccept::MessageSize() const
}

#if CHIP_AUTOMATION_LOGGING
void ReceiveAccept::LogMessage() const
void ReceiveAccept::LogMessage(bdx::MessageType messageType) const
{
ChipLogAutomation("ReceiveAccept");
ChipLogAutomation(" Transfer Control: 0x%X", TransferCtlFlags.Raw() | Version);
Expand Down Expand Up @@ -471,9 +471,9 @@ bool CounterMessage::operator==(const CounterMessage & another) const
}

#if CHIP_AUTOMATION_LOGGING
void CounterMessage::LogMessage() const
void CounterMessage::LogMessage(bdx::MessageType messageType) const
{
switch (mMessageType)
switch (messageType)
{
case MessageType::BlockQuery:
ChipLogAutomation("BlockQuery");
Expand Down Expand Up @@ -539,9 +539,9 @@ size_t DataBlock::MessageSize() const
}

#if CHIP_AUTOMATION_LOGGING
void DataBlock::LogMessage() const
void DataBlock::LogMessage(bdx::MessageType messageType) const
{
switch (mMessageType)
switch (messageType)
{
case MessageType::Block:
ChipLogAutomation("Block");
Expand Down
44 changes: 12 additions & 32 deletions src/protocols/bdx/BdxMessages.h
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ struct BdxMessage
* @brief
* Log all parameters for this message.
*/
virtual void LogMessage() const = 0;
virtual void LogMessage(bdx::MessageType messageType) const = 0;
#endif // CHIP_AUTOMATION_LOGGING

virtual ~BdxMessage() = default;
Expand All @@ -137,9 +137,6 @@ struct BdxMessage
*/
struct TransferInit : public BdxMessage
{
TransferInit() {}
TransferInit(bdx::MessageType messageType) { mMessageType = messageType; }

/**
* @brief
* Equality check method.
Expand All @@ -150,6 +147,9 @@ struct TransferInit : public BdxMessage
BitFlags<TransferControlFlags> TransferCtlOptions;
uint8_t Version = 0; ///< The highest version supported by the sender

// Range Control
BitFlags<RangeControlFlags> mRangeCtlFlags;

// All required
uint16_t MaxBlockSize = 0; ///< Proposed max block size to use in transfer
uint64_t StartOffset = 0; ///< Proposed start offset of data. 0 for no offset
Expand All @@ -170,13 +170,8 @@ struct TransferInit : public BdxMessage
Encoding::LittleEndian::BufferWriter & WriteToBuffer(Encoding::LittleEndian::BufferWriter & aBuffer) const override;
size_t MessageSize() const override;
#if CHIP_AUTOMATION_LOGGING
void LogMessage() const override;
void LogMessage(bdx::MessageType messageType) const override;
#endif // CHIP_AUTOMATION_LOGGING

private:
// These are only needed for logging purpose
bdx::MessageType mMessageType;
BitFlags<RangeControlFlags> mRangeCtlFlags;
};

using SendInit = TransferInit;
Expand Down Expand Up @@ -212,7 +207,7 @@ struct SendAccept : public BdxMessage
Encoding::LittleEndian::BufferWriter & WriteToBuffer(Encoding::LittleEndian::BufferWriter & aBuffer) const override;
size_t MessageSize() const override;
#if CHIP_AUTOMATION_LOGGING
void LogMessage() const override;
void LogMessage(bdx::MessageType messageType) const override;
#endif // CHIP_AUTOMATION_LOGGING
};

Expand All @@ -230,6 +225,9 @@ struct ReceiveAccept : public BdxMessage
// Transfer Control (required, only one should be set)
BitFlags<TransferControlFlags> TransferCtlFlags;

// Range Control
BitFlags<RangeControlFlags> mRangeCtlFlags;

// All required
uint8_t Version = 0; ///< The agreed upon version for the transfer
uint16_t MaxBlockSize = 0; ///< Chosen max block size to use in transfer
Expand All @@ -249,12 +247,8 @@ struct ReceiveAccept : public BdxMessage
Encoding::LittleEndian::BufferWriter & WriteToBuffer(Encoding::LittleEndian::BufferWriter & aBuffer) const override;
size_t MessageSize() const override;
#if CHIP_AUTOMATION_LOGGING
void LogMessage() const override;
void LogMessage(bdx::MessageType messageType) const override;
#endif // CHIP_AUTOMATION_LOGGING

private:
// This is only needed for logging purpose
BitFlags<RangeControlFlags> mRangeCtlFlags;
};

/**
Expand All @@ -263,9 +257,6 @@ struct ReceiveAccept : public BdxMessage
*/
struct CounterMessage : public BdxMessage
{
CounterMessage() {}
CounterMessage(bdx::MessageType messageType) { mMessageType = messageType; }

/**
* @brief
* Equality check method.
Expand All @@ -278,12 +269,8 @@ struct CounterMessage : public BdxMessage
Encoding::LittleEndian::BufferWriter & WriteToBuffer(Encoding::LittleEndian::BufferWriter & aBuffer) const override;
size_t MessageSize() const override;
#if CHIP_AUTOMATION_LOGGING
void LogMessage() const override;
void LogMessage(bdx::MessageType messageType) const override;
#endif // CHIP_AUTOMATION_LOGGING

private:
// This is only needed for logging purpose
bdx::MessageType mMessageType;
};

using BlockQuery = CounterMessage;
Expand All @@ -295,9 +282,6 @@ using BlockAckEOF = CounterMessage;
*/
struct DataBlock : public BdxMessage
{
DataBlock() {}
DataBlock(bdx::MessageType messageType) { mMessageType = messageType; }

/**
* @brief
* Equality check method.
Expand All @@ -318,12 +302,8 @@ struct DataBlock : public BdxMessage
Encoding::LittleEndian::BufferWriter & WriteToBuffer(Encoding::LittleEndian::BufferWriter & aBuffer) const override;
size_t MessageSize() const override;
#if CHIP_AUTOMATION_LOGGING
void LogMessage() const override;
void LogMessage(bdx::MessageType messageType) const override;
#endif // CHIP_AUTOMATION_LOGGING

private:
// This is only needed for logging purpose
bdx::MessageType mMessageType;
};

using Block = DataBlock;
Expand Down
Loading

0 comments on commit 4aaba2d

Please sign in to comment.