00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 00025 00026 00027 00028 00029 00030 00031 00032 00033 00034 00035 00036 00037 00038 00039 00040 #include "jaus/mobility/list/rejectelementrequest.h" 00041 00042 using namespace JAUS; 00043 00052 RejectElementRequest::RejectElementRequest(const Address& dest, const Address& src) : Message(REJECT_ELEMENT_REQUEST, dest, src) 00053 { 00054 mRequestID = 0; 00055 mResponseCode = UnspecifiedError; 00056 } 00057 00058 00064 RejectElementRequest::RejectElementRequest(const RejectElementRequest& message) : Message(REJECT_ELEMENT_REQUEST) 00065 { 00066 mRequestID = 0; 00067 mResponseCode = UnspecifiedError; 00068 *this = message; 00069 } 00070 00071 00077 RejectElementRequest::~RejectElementRequest() 00078 { 00079 } 00080 00081 00093 int RejectElementRequest::WriteMessageBody(Packet& packet) const 00094 { 00095 int expected = BYTE_SIZE * 2; 00096 int written = 0; 00097 00098 written += packet.Write(mRequestID); 00099 written += packet.Write((Byte)mResponseCode); 00100 00101 return expected == written ? written : -1; 00102 } 00103 00104 00116 int RejectElementRequest::ReadMessageBody(const Packet& packet) 00117 { 00118 int expected = BYTE_SIZE * 2; 00119 int read = 0; 00120 00121 read += packet.Read(mRequestID); 00122 read += packet.Read((Byte &)mResponseCode); 00123 00124 return expected == read ? read : -1; 00125 } 00126 00127 00133 void RejectElementRequest::ClearMessageBody() 00134 { 00135 mRequestID = 0; 00136 mResponseCode = UnspecifiedError; 00137 } 00138 00139 00147 int RejectElementRequest::RunTestCase() const 00148 { 00149 int result = 0; 00150 00151 Packet packet; 00152 00153 RejectElementRequest msg1, msg2; 00154 00155 msg1.SetRequestID(34); 00156 msg1.SetResponseCode(UnspecifiedError); 00157 00158 if((msg1.WriteMessageBody(packet) != -1) && 00159 (msg2.ReadMessageBody(packet) != -1)) 00160 { 00161 if((msg1.GetRequestID() == msg2.GetRequestID()) && 00162 (msg1.GetResponseCode() == msg2.GetResponseCode()) ) 00163 { 00164 result = 1; 00165 } 00166 } 00167 00168 return result; 00169 } 00170 00171 00177 RejectElementRequest& RejectElementRequest::operator=(const RejectElementRequest& message) 00178 { 00179 if(this != &message) 00180 { 00181 CopyHeaderData(&message); 00182 mRequestID = message.mRequestID; 00183 mResponseCode = message.mResponseCode; 00184 } 00185 return *this; 00186 } 00187 00188 00189 /* End of File */