[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[certi-cvs] certi RTIG/RTIG.cc RTIG/RTIG_processing.cc RTIG... [br_DEV_H
From: |
certi-cvs |
Subject: |
[certi-cvs] certi RTIG/RTIG.cc RTIG/RTIG_processing.cc RTIG... [br_DEV_HETEROGENEOUS] |
Date: |
Thu, 10 Apr 2008 11:35:58 +0000 |
CVSROOT: /sources/certi
Module name: certi
Branch: br_DEV_HETEROGENEOUS
Changes by: Eric NOULARD <erk> 08/04/10 11:35:57
Modified files:
RTIG : RTIG.cc RTIG_processing.cc Federation.cc
libCERTI : NetworkMessage.hh NetworkMessage_RW.cc
NM_Classes.hh ObjectClassBroadcastList.cc
InteractionBroadcastList.cc ObjectSet.cc
InteractionBroadcastList.hh NM_Classes.cc
Interaction.cc ObjectClass.cc NetworkMessage.cc
RTIA : Communications.cc
Log message:
Update with NM_Factory usage
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/RTIG.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.36.2.2&r2=3.36.2.3
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/RTIG_processing.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.56.2.1&r2=3.56.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/RTIG/Federation.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.80.2.1&r2=3.80.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage.hh?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.30.2.5&r2=3.30.2.6
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage_RW.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.45.2.4&r2=3.45.2.5
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NM_Classes.hh?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=1.1.2.6&r2=1.1.2.7
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/ObjectClassBroadcastList.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.18.2.1&r2=3.18.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/InteractionBroadcastList.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.11&r2=3.11.2.1
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/ObjectSet.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.18.2.1&r2=3.18.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/InteractionBroadcastList.hh?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.7&r2=3.7.4.1
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NM_Classes.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=1.1.2.6&r2=1.1.2.7
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/Interaction.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.35.2.1&r2=3.35.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/ObjectClass.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.41.2.1&r2=3.41.2.2
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.28.2.4&r2=3.28.2.5
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/Communications.cc?cvsroot=certi&only_with_tag=br_DEV_HETEROGENEOUS&r1=3.22.2.1&r2=3.22.2.2
Patches:
Index: RTIG/RTIG.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/RTIG.cc,v
retrieving revision 3.36.2.2
retrieving revision 3.36.2.3
diff -u -b -r3.36.2.2 -r3.36.2.3
--- RTIG/RTIG.cc 9 Apr 2008 14:16:33 -0000 3.36.2.2
+++ RTIG/RTIG.cc 10 Apr 2008 11:35:55 -0000 3.36.2.3
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: RTIG.cc,v 3.36.2.2 2008/04/09 14:16:33 erk Exp $
+// $Id: RTIG.cc,v 3.36.2.3 2008/04/10 11:35:55 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -43,7 +43,7 @@
namespace certi {
namespace rtig {
-static pdCDebug D("RTIG", __FILE__);
+static PrettyDebug D("RTIG", __FILE__);
static PrettyDebug G("GENDOC",__FILE__);
// ----------------------------------------------------------------------------
@@ -961,8 +961,9 @@
if (link == NULL) return link ;
+ /* FIXME ***/
if (rep.exception != e_NO_EXCEPTION) {
- rep.write(link);
+ rep.send(link);
D.Out(pdExcept,
"RTIG catched exception %d and sent it back to federate %d.",
rep.exception, rep.federate);
@@ -986,4 +987,4 @@
}} // namespace certi/rtig
-// $Id: RTIG.cc,v 3.36.2.2 2008/04/09 14:16:33 erk Exp $
+// $Id: RTIG.cc,v 3.36.2.3 2008/04/10 11:35:55 erk Exp $
Index: RTIG/RTIG_processing.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/RTIG_processing.cc,v
retrieving revision 3.56.2.1
retrieving revision 3.56.2.2
diff -u -b -r3.56.2.1 -r3.56.2.2
--- RTIG/RTIG_processing.cc 18 Mar 2008 15:55:58 -0000 3.56.2.1
+++ RTIG/RTIG_processing.cc 10 Apr 2008 11:35:56 -0000 3.56.2.2
@@ -18,11 +18,12 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: RTIG_processing.cc,v 3.56.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: RTIG_processing.cc,v 3.56.2.2 2008/04/10 11:35:56 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
#include "RTIG.hh"
+#include "NM_Classes.hh"
#include <assert.h>
@@ -42,7 +43,7 @@
{
std::string federation = req->federationName;
std::string FEDid = req->FEDid;
- NetworkMessage rep ; // rep for answer to RTIA
+ NM_Create_Federation_Execution rep; // rep for answer to RTIA
G.Out(pdGendoc,"enter RTIG::processCreateFederation");
G.Out(pdGendoc,"BEGIN ** CREATE FEDERATION SERVICE **");
@@ -78,7 +79,6 @@
ClientSockets.push_front(com_mc);
#else
- rep.exception = e_NO_EXCEPTION ;
// We catch createFederation because it is useful to send
// exception reason to RTIA
try {
@@ -101,7 +101,6 @@
}
#endif
// Prepare answer for RTIA : store NetworkMessage rep
- rep.type = NetworkMessage::CREATE_FEDERATION_EXECUTION ;
if ( rep.exception == e_NO_EXCEPTION )
{
rep.federation = h ;
@@ -111,7 +110,7 @@
G.Out(pdGendoc,"processCreateFederation===>write answer to RTIA");
- rep.write(link); // Send answer to RTIA
+ rep.send(link); // Send answer to RTIA
D.Out(pdInit, "Federation \"%s\" created with Handle %d.",
federation.c_str(), rep.federation);
@@ -176,9 +175,7 @@
// Prepare answer about JoinFederationExecution
// This answer wille be made AFTER FED file processing
- NetworkMessage rep ;
- rep.type = NetworkMessage::JOIN_FEDERATION_EXECUTION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Join_Federation_Execution rep ;
rep.federationName = federation;
rep.federate = num_federe ;
rep.federation = num_federation ;
@@ -199,8 +196,7 @@
}
// RTIG says OK or not to RTIA
- NetworkMessage repFED ;
- repFED.type = NetworkMessage::GET_FED_FILE ;
+ NM_Get_FED_File repFED ;
repFED.federate = num_federe ;
repFED.federation = num_federation ;
repFED.number = 0 ;
@@ -211,15 +207,14 @@
repFED.type,repFED.FEDid.c_str());
G.Out(pdGendoc,"processJoinFederation====>Begin FED file transfer");
- repFED.write(link);
+ repFED.send(link);
if ( e == e_NO_EXCEPTION )
{
// Wait for OK from RTIA
- NetworkMessage msg ;
- msg.type = NetworkMessage::GET_FED_FILE ;
+ NM_Get_FED_File msg ;
D.Out(pdTrace,"wait NetworkMessage of Type %d",msg.type);
- msg.read(link);
+ msg.receive(link);
assert ( msg.number == 0 );
// RTIA has opened working file then RTIG has to transfer file contents
// line by line
@@ -229,7 +224,6 @@
{
num_line++;
// RTIG sends line to RTIA and number gives line number
- repFED.type = NetworkMessage::GET_FED_FILE ;
repFED.exception = e_NO_EXCEPTION ;
repFED.federate = num_federe ;
repFED.federation = num_federation ;
@@ -241,16 +235,15 @@
repFED.setValue(0,file_line,strlen(file_line)+1);
// Send answer
- repFED.write(link);
+ repFED.send(link);
// Wait for OK from RTIA
- msg.read(link);
+ msg.receive(link);
assert ( msg.number == num_line );
}
// close
fclose(fdd) ;
- repFED.type = NetworkMessage::GET_FED_FILE ;
repFED.exception = e_NO_EXCEPTION ;
repFED.federate = num_federe ;
repFED.federation = num_federation ;
@@ -261,7 +254,7 @@
G.Out(pdGendoc,"processJoinFederation====>End FED file transfer");
- repFED.write(link);
+ repFED.send(link);
}
// END of FED file processing
@@ -276,7 +269,7 @@
// Send answer
- rep.write(link);
+ rep.send(link);
G.Out(pdGendoc,"exit RTIG::processJoinFederation");
G.Out(pdGendoc,"END ** JOIN FEDERATION SERVICE **");
@@ -321,15 +314,13 @@
federationHandles.free(num_federation);
D.Out(pdInit, "Federation \"%s\" has been destroyed.", federation.c_str());
- NetworkMessage rep ;
- rep.type = NetworkMessage::DESTROY_FEDERATION_EXECUTION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Destroy_Federation_Execution rep ;
rep.federate = req->federate ;
rep.federationName = req->federationName;
G.Out(pdGendoc,"processDestroyFederation===>write to RTIA");
- rep.write(link);
+ rep.send(link);
G.Out(pdGendoc,"END ** DESTROY FEDERATION SERVICE **");
G.Out(pdGendoc,"exit RTIG::processDestroyFederation");
@@ -427,15 +418,14 @@
D.Out(pdTerm, "Federation %u is now synchronizing.", req->federation);
// send synchronizationPointRegistrationSucceeded() to federate.
- NetworkMessage rep ;
- rep.type = NetworkMessage::SYNCHRONIZATION_POINT_REGISTRATION_SUCCEEDED ;
+ NM_Synchronization_Point_Registration_Succeeded rep ;
rep.federate = req->federate ;
rep.federation = req->federation ;
rep.setLabel(req->label.c_str());
G.Out(pdGendoc," processRegisterSynchronization====> write SPRS to
RTIA");
- rep.write(link);
+ rep.send(link);
// boolean true means a federates set exists
if ( req->boolean )
@@ -577,14 +567,12 @@
D.Out(pdRegister, "Federate %u of Federation %u published object class
%d.",
req->federate, req->federation, req->objectClass);
- NetworkMessage rep ;
- rep.type = req->type ;
- rep.exception = e_NO_EXCEPTION ;
- rep.federate = req->federate ;
- rep.objectClass = req->objectClass ;
- rep.handleArraySize = 0 ;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));
+ rep->federate = req->federate ;
+ rep->objectClass = req->objectClass ;
+ rep->handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep->send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -610,14 +598,12 @@
"Federate %u of Federation %u subscribed to object class %d.",
req->federate, req->federation, req->objectClass);
- NetworkMessage rep ;
- rep.type = req->type ;
- rep.exception = e_NO_EXCEPTION ;
- rep.federate = req->federate ;
- rep.objectClass = req->objectClass ;
- rep.handleArraySize = 0 ;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));
+ rep->federate = req->federate ;
+ rep->objectClass = req->objectClass ;
+ rep->handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep->send(link); // send answer to RTIA
G.Out(pdGendoc,"END ** SUBSCRIBE OBJECT CLASS SERVICE **");
G.Out(pdGendoc,"exit RTIG::processSubscribeObjectClass");
@@ -642,13 +628,11 @@
req->federation,
req->interactionClass);
- NetworkMessage rep ;
- rep.type = req->type ;
- rep.exception = e_NO_EXCEPTION ;
- rep.federate = req->federate ;
- rep.interactionClass = req->interactionClass ;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type)); ;
+ rep->federate = req->federate ;
+ rep->interactionClass = req->interactionClass ;
- rep.write(link); // send answer to RTIA
+ rep->send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -669,13 +653,11 @@
req->federation,
req->interactionClass);
- NetworkMessage rep ;
- rep.type = req->type ;
- rep.exception = e_NO_EXCEPTION ;
- rep.federate = req->federate ;
- rep.interactionClass = req->interactionClass ;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));;
+ rep->federate = req->federate ;
+ rep->interactionClass = req->interactionClass ;
- rep.write(link); // send answer to RTIA
+ rep->send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -683,26 +665,24 @@
void
RTIG::processRegisterObject(Socket *link, NetworkMessage *req)
{
- NetworkMessage rep ;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));;
auditServer << "Class = %u" << req->objectClass ;
- rep.object = federations.registerObject(req->federation,
+ rep->object = federations.registerObject(req->federation,
req->federate,
req->objectClass,
const_cast<char*>(req->label.c_str()));
- auditServer << ", Handle = " << rep.object ;
+ auditServer << ", Handle = " << rep->object ;
D.Out(pdRegister,
"Object \"%s\" of Federate %u has been registered under ID %u.",
- req->label.c_str(), req->federate, rep.object);
+ req->label.c_str(), req->federate, rep->object);
- rep.type = req->type ;
- rep.exception = e_NO_EXCEPTION ;
- rep.federate = req->federate ;
- rep.setLabel(req->label.c_str());
+ rep->federate = req->federate ;
+ rep->setLabel(req->label);
// rep.object is set by the call of registerObject
- rep.write(link); // Send answer to RTIA
+ rep->send(link); // Send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -745,9 +725,7 @@
free(ValueArray);
// Building answer (Network Message re)
- NetworkMessage rep ;
- rep.type = NetworkMessage::UPDATE_ATTRIBUTE_VALUES ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Update_Attribute_Values rep ;
rep.federate = req->federate ;
rep.object = req->object ;
rep.date = req->date ;
@@ -756,7 +734,7 @@
rep.label=req->label ;
rep.tag=req->tag;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -802,9 +780,7 @@
D.Out(pdDebug, "Interaction %d parameters update completed",
req->interactionClass);
- NetworkMessage rep ;
- rep.type = NetworkMessage::SEND_INTERACTION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Send_Interaction rep ;
rep.federate = req->federate ;
rep.interactionClass = req->interactionClass ;
rep.handleArraySize = 0 ;
@@ -812,7 +788,7 @@
rep.label=req->label;
rep.tag=req->tag;
G.Out(pdGendoc,"processSendInteraction===>write");
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
G.Out(pdGendoc,"exit RTIG::processSendInteraction");
G.Out(pdGendoc,"END ** SEND INTERACTION SERVICE **");
@@ -845,13 +821,11 @@
D.Out(pdRegister, "Object # %u of Federation %u has been deleted.",
req->object, req->federation);
- NetworkMessage rep ;
- rep.type = NetworkMessage::DELETE_OBJECT ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Delete_Object rep ;
rep.federate = req->federate ;
rep.object = req->object ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
G.Out(pdGendoc,"exit RTIG::processDeleteObject");
G.Out(pdGendoc,"END ** DELETE OBJECT INSTANCE **");
@@ -875,13 +849,11 @@
D.Out(pdDebug, "Owner of Attribute %u of Object %u .",
req->handleArray[0], req->object);
- NetworkMessage rep ;
- rep.type = NetworkMessage::QUERY_ATTRIBUTE_OWNERSHIP ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Query_Attribute_Ownership rep ;
rep.federate = req->federate ;
rep.object = req->object ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -889,7 +861,7 @@
void
RTIG::processAttributeOwnedByFederate(Socket *link, NetworkMessage *req)
{
- NetworkMessage rep ;
+ NM_Is_Attribute_Owned_By_Federate rep ;
D.Out(pdDebug, "Owner of Attribute %u of Object %u .",
req->handleArray[0], req->object);
@@ -907,12 +879,10 @@
D.Out(pdDebug, "Owner of Attribute %u of Object %u .",
req->handleArray[0], req->object);
- rep.type = NetworkMessage::IS_ATTRIBUTE_OWNED_BY_FEDERATE ;
- rep.exception = e_NO_EXCEPTION ;
rep.federate = req->federate ;
rep.object = req->object ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -933,14 +903,12 @@
"divestiture of object %u.",
req->federate, req->federation, req->object);
- NetworkMessage rep ;
- rep.type = NetworkMessage::NEGOTIATED_ATTRIBUTE_OWNERSHIP_DIVESTITURE ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Negotiated_Attribute_Ownership_Divestiture rep ;
rep.federate = req->federate ;
rep.object = req->object ;
rep.handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -962,14 +930,12 @@
"of object %u.",
req->federate, req->federation, req->object);
- NetworkMessage rep ;
- rep.type = NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION_IF_AVAILABLE ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Attribute_Ownership_Acquisition_If_Available rep ;
rep.federate = req->federate ;
rep.object = req->object ;
rep.handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -991,14 +957,12 @@
"of object %u.",
req->federate, req->federation, req->object);
- NetworkMessage rep ;
- rep.type = NetworkMessage::UNCONDITIONAL_ATTRIBUTE_OWNERSHIP_DIVESTITURE ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Unconditional_Attribute_Ownership_Divestiture rep ;
rep.federate = req->federate ;
rep.object = req->object ;
rep.handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -1020,14 +984,12 @@
"Federate %u of Federation %u ownership acquisition of object %u.",
req->federate, req->federation, req->object);
- NetworkMessage rep ;
- rep.type = NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Attribute_Ownership_Acquisition rep ;
rep.federate = req->federate ;
rep.object = req->object ;
rep.handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -1048,14 +1010,12 @@
"divestiture of object %u.",
req->federate, req->federation, req->object);
- NetworkMessage rep ;
- rep.type =
NetworkMessage::CANCEL_NEGOTIATED_ATTRIBUTE_OWNERSHIP_DIVESTITURE ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Cancel_Negotiated_Attribute_Ownership_Divestiture rep ;
rep.federate = req->federate ;
rep.object = req->object ;
rep.handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -1077,19 +1037,17 @@
"of object %u.",
req->federate, req->federation, req->object);
- NetworkMessage rep ;
+ NM_Attribute_Ownership_Release_Response rep ;
rep.handleArraySize = attributes->size();
for (unsigned int i = 0 ; i < attributes->size(); i++) {
rep.handleArray[i] = attributes->getHandle(i);
}
- rep.type = NetworkMessage::ATTRIBUTE_OWNERSHIP_RELEASE_RESPONSE ;
- rep.exception = e_NO_EXCEPTION ;
rep.federate = req->federate ;
rep.object = req->object ;
- rep.write(link); // Send answer to RTIA
+ rep.send(link); // Send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -1110,14 +1068,12 @@
"Federate %u of Federation %u release response of object %u.",
req->federate, req->federation, req->object);
- NetworkMessage rep ;
- rep.type = NetworkMessage::CANCEL_ATTRIBUTE_OWNERSHIP_ACQUISITION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_Cancel_Attribute_Ownership_Acquisition rep ;
rep.federate = req->federate ;
rep.object = req->object ;
rep.handleArraySize = 0 ;
- rep.write(link); // send answer to RTIA
+ rep.send(link); // send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -1127,7 +1083,7 @@
{
// TODO: audit...
- NetworkMessage rep ;
+ NM_DDM_Create_Region rep ;
rep.region = federations.createRegion(req->federation,
req->federate,
@@ -1138,10 +1094,8 @@
<< req->federation << " creates region " << rep.region
<< endl ;
- rep.type = NetworkMessage::DDM_CREATE_REGION ;
- rep.exception = e_NO_EXCEPTION ;
rep.federate = req->federate ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1156,12 +1110,9 @@
<< req->federation << " modifies region " << req->region
<< endl ;
- NetworkMessage rep ;
-
- rep.type = NetworkMessage::DDM_MODIFY_REGION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Modify_Region rep ;
rep.federate = req->federate ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1177,12 +1128,10 @@
<< req->federation << " deletes region " << req->region
<< endl ;
- NetworkMessage rep ;
- rep.type = NetworkMessage::DDM_DELETE_REGION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Delete_Region rep ;
rep.federate = req->federate ;
rep.region = req->region ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1200,11 +1149,9 @@
req->region, req->handleArraySize,
req->handleArray);
- NetworkMessage rep ;
- rep.type = NetworkMessage::DDM_ASSOCIATE_REGION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Associate_Region rep ;
rep.federate = req->federate ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1221,11 +1168,9 @@
<< req->federation << " associates region " << req->region
<< " from object " << req->object << endl ;
- NetworkMessage rep ;
- rep.type = NetworkMessage::DDM_UNASSOCIATE_REGION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Unassociate_Region rep ;
rep.federate = req->federate ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1242,13 +1187,11 @@
req->objectClass, req->region,
req->handleArraySize, req->handleArray);
- NetworkMessage rep ;
- rep.type = NetworkMessage::DDM_SUBSCRIBE_ATTRIBUTES ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Subscribe_Attributes rep ;
rep.federate = req->federate ;
rep.objectClass = req->objectClass ;
rep.handleArraySize = 0 ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1264,11 +1207,9 @@
federations.unsubscribeAttributesWR(req->federation, req->federate,
req->objectClass, req->region);
- NetworkMessage rep ;
- rep.type = NetworkMessage::DDM_UNSUBSCRIBE_ATTRIBUTES ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Unsubscribe_Attributes rep ;
rep.federate = req->federate ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1285,11 +1226,9 @@
<< req->federation << " subscribes with region " << req->region
<< " to interaction class " << req->interactionClass << endl ;
- NetworkMessage rep ;
- rep.type = NetworkMessage::DDM_SUBSCRIBE_INTERACTION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Subscribe_Interaction rep ;
rep.federate = req->federate ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1306,11 +1245,9 @@
<< req->federation << " unsubscribes with region " <<
req->region
<< " from interaction class " << req->interactionClass << endl ;
- NetworkMessage rep ;
- rep.type = NetworkMessage::DDM_UNSUBSCRIBE_INTERACTION ;
- rep.exception = e_NO_EXCEPTION ;
+ NM_DDM_Unsubscribe_Interaction rep ;
rep.federate = req->federate ;
- rep.write(link);
+ rep.send(link);
}
// ----------------------------------------------------------------------------
@@ -1318,7 +1255,7 @@
void
RTIG::processRegisterObjectWithRegion(Socket *link, NetworkMessage *req)
{
- NetworkMessage rep ;
+ std::auto_ptr<NetworkMessage> rep(NM_Factory::create(req->type));
// FIXME bug #9869
// When we were passed a set of region
// we should register object for each region
@@ -1327,7 +1264,7 @@
// - req->region (coming from NetworkMessage::region)
// - req->regions (coming from BasicMessage::regions)
// would be nice to sort those thing out.
- rep.object = federations.registerObjectWithRegion(req->federation,
+ rep->object = federations.registerObjectWithRegion(req->federation,
req->federate,
req->objectClass,
const_cast<char*>(req->label.c_str()),
@@ -1337,14 +1274,10 @@
D.Out(pdRegister,
"Object \"%s\" of Federate %u has been registered under ID %u.",
- req->label.c_str(), req->federate, rep.object);
-
- rep.type = NetworkMessage::DDM_REGISTER_OBJECT ;
- rep.type = req->type ;
- rep.exception = e_NO_EXCEPTION ;
- rep.federate = req->federate ;
+ req->label.c_str(), req->federate, rep->object);
- rep.write(link); // Send answer to RTIA
+ rep->federate = req->federate ;
+ rep->send(link); // Send answer to RTIA
}
// ----------------------------------------------------------------------------
@@ -1352,7 +1285,7 @@
void
RTIG::processRequestObjectAttributeValueUpdate(Socket *link, NetworkMessage
*request)
{
- NetworkMessage answer ;
+ NM_Request_Object_Attribute_Value_Update answer ;
Handle federateOwner ; // federate owner of the object
G.Out(pdGendoc,"enter RTIG::processRequestObjectAttributeValueUpdate");
G.Out(pdGendoc,"BEGIN ** REQUEST OBJECT ATTRIBUTE VALUE UPDATE **");
@@ -1390,11 +1323,11 @@
answer.federate = request->federate ;
answer.object = request->object ;
- answer.write(link); // Send answer to RTIA
+ answer.send(link); // Send answer to RTIA
G.Out(pdGendoc,"exit RTIG::processRequestObjectAttributeValueUpdate");
G.Out(pdGendoc,"END ** REQUEST OBJECT ATTRIBUTE VALUE UPDATE **");
}
}} // namespace certi/rtig
-// $Id: RTIG_processing.cc,v 3.56.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: RTIG_processing.cc,v 3.56.2.2 2008/04/10 11:35:56 erk Exp $
Index: RTIG/Federation.cc
===================================================================
RCS file: /sources/certi/certi/RTIG/Federation.cc,v
retrieving revision 3.80.2.1
retrieving revision 3.80.2.2
diff -u -b -r3.80.2.1 -r3.80.2.2
--- RTIG/Federation.cc 18 Mar 2008 15:55:58 -0000 3.80.2.1
+++ RTIG/Federation.cc 10 Apr 2008 11:35:56 -0000 3.80.2.2
@@ -18,11 +18,12 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: Federation.cc,v 3.80.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: Federation.cc,v 3.80.2.2 2008/04/10 11:35:56 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
#include "Federation.hh"
+#include "NM_Classes.hh"
#include <sstream>
#include <cassert>
@@ -439,39 +440,37 @@
// Send, to the newly added federate, a Null message from each regulating
// federate (i) with their logical time h(i). This permits to calculate
// its LBTS.
- NetworkMessage message ;
+ NM_Message_Null nullMessage;
+ NM_Announce_Synchronization_Point ASPMessage;
try {
std::vector<LBTS::FederateClock> v ;
regulators.get(v);
for (unsigned int i = 0 ; i < v.size(); ++i) {
- message.type = NetworkMessage::MESSAGE_NULL ;
- message.federation = handle ;
- message.federate = v[i].first ;
- message.date = v[i].second ;
-
+ nullMessage.federation = handle ;
+ nullMessage.federate = v[i].first ;
+ nullMessage.date = v[i].second ;
D.Out(pdTerm,
"Sending NULL message(type %d) from %d to new federate.",
- message.type, message.federate);
+ nullMessage.type, nullMessage.federate);
- message.write(tcp_link);
+ nullMessage.send(tcp_link);
}
// If federation is synchronizing, put federate in same state.
if (isSynchronizing()) {
- message.type = NetworkMessage::ANNOUNCE_SYNCHRONIZATION_POINT ;
- message.federate = federate_handle ;
- message.federation = handle ;
+ ASPMessage.federate = federate_handle ;
+ ASPMessage.federation = handle ;
std::map<const char *, const char *>::const_iterator i ;
i = synchronizationLabels.begin();
for (; i != synchronizationLabels.end(); i++) {
- message.setLabel((*i).first);
- message.setTag((*i).second);
+ ASPMessage.setLabel((*i).first);
+ ASPMessage.setTag((*i).second);
D.Out(pdTerm, "Sending synchronization message %s (type %d)"
- " to the new Federate.", (*i).first, message.type);
+ " to the new Federate.", (*i).first, ASPMessage.type);
- message.write(tcp_link);
+ ASPMessage.send(tcp_link);
federates.back().addSynchronizationLabel((*i).first);
}
}
@@ -558,7 +557,7 @@
#else
socket = server->getSocketLink(i->getHandle());
#endif
- msg->write(socket);
+ msg->send(socket);
}
catch (RTIinternalError &e) {
D[pdExcept] << "Reference to a killed Federate while "
@@ -606,7 +605,7 @@
#else
socket = server->getSocketLink(i->getHandle());
#endif
- msg->write(socket);
+ msg->send(socket);
}
catch (RTIinternalError &e)
{
@@ -1152,7 +1151,7 @@
else
G.Out(pdGendoc," =====> send message R_F_R_F to RTIA");
- msg->write(socket);
+ msg->send(socket);
delete msg ;
// Reading file failed: not restoring !
@@ -1190,8 +1189,9 @@
// send message.
socket = server->getSocketLink(msg->federate);
G.Out(pdGendoc," =====> send message I_F_R to federate
%d",msg->federate);
- msg->write(socket);
+ msg->send(socket);
}
+ delete msg;
G.Out(pdGendoc,"exit Federation::requestFederationRestore");
}
@@ -2277,7 +2277,7 @@
throw (ObjectNotKnown)
{
FederateHandle theOwnerHandle ;
-NetworkMessage mess ;
+NM_Provide_Attribute_Value_Update mess ;
G.Out(pdGendoc,"enter Federation::requestObjectOwner");
@@ -2285,7 +2285,6 @@
theOwnerHandle = root->requestObjectOwner(theFederateHandle,theObject) ;
// Send a PROVIDE_ATTRIBUTE_VALUE_UPDATE to the owner
- mess.type = NetworkMessage::PROVIDE_ATTRIBUTE_VALUE_UPDATE ;
mess.federate = theFederateHandle ;
mess.object = theObject ;
mess.handleArraySize = theListSize ;
@@ -2294,7 +2293,7 @@
mess.handleArray[i] = theAttributeList[i] ;
}
- mess.write(server->getSocketLink(theOwnerHandle));
+ mess.send(server->getSocketLink(theOwnerHandle));
G.Out(pdGendoc,"exit Federation::requestObjectOwner");
@@ -2304,5 +2303,5 @@
}} // namespace certi/rtig
-// $Id: Federation.cc,v 3.80.2.1 2008/03/18 15:55:58 erk Exp $
+// $Id: Federation.cc,v 3.80.2.2 2008/04/10 11:35:56 erk Exp $
Index: libCERTI/NetworkMessage.hh
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage.hh,v
retrieving revision 3.30.2.5
retrieving revision 3.30.2.6
diff -u -b -r3.30.2.5 -r3.30.2.6
--- libCERTI/NetworkMessage.hh 9 Apr 2008 14:16:30 -0000 3.30.2.5
+++ libCERTI/NetworkMessage.hh 10 Apr 2008 11:35:56 -0000 3.30.2.6
@@ -17,7 +17,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: NetworkMessage.hh,v 3.30.2.5 2008/04/09 14:16:30 erk Exp $
+// $Id: NetworkMessage.hh,v 3.30.2.6 2008/04/10 11:35:56 erk Exp $
// ----------------------------------------------------------------------------
#ifndef CERTI_NETWORK_MESSAGE_HH
@@ -149,8 +149,8 @@
virtual void serialize();
virtual void deserialize();
- void send(Socket* socket);
- void receive(Socket* socket);
+ void send(Socket* socket) throw (NetworkError, NetworkSignal);
+ void receive(Socket* socket) throw (NetworkError, NetworkSignal);
// Parameter and Attribute Management
// Remove the Parameter of rank 'Rank' in the ParamArray and its value
in
@@ -166,13 +166,6 @@
// See RemoveParameter for explanations.
void removeAttribute(UShort Rank);
- // Read and Write NetworkMessage Objects to and from Socket objects.
- void write(Socket *Socket)
- throw (NetworkError, NetworkSignal);
-
- void read(Socket *Socket)
- throw (NetworkError, NetworkSignal);
-
// Value Array Management
// setValue : Value and its length are stored into ValueArray[Rank]
@@ -294,6 +287,9 @@
*/
std::string exceptionReason;
+ /* used by some sub-classes */
+ int32_t attribute;
+
protected:
/**
* The message name.
@@ -301,10 +297,10 @@
* network message constructor
*/
std::string name;
-
-private:
// ValueArray is now a ValueLengthPair
ValueLengthPair ValueArray[MAX_ATTRIBUTES_PER_CLASS] ;
+
+private:
};
// BUG: FIXME this is used by SocketMC and should
@@ -315,4 +311,4 @@
#endif // CERTI_NETWORK_MESSAGE_HH
-// $Id: NetworkMessage.hh,v 3.30.2.5 2008/04/09 14:16:30 erk Exp $
+// $Id: NetworkMessage.hh,v 3.30.2.6 2008/04/10 11:35:56 erk Exp $
Index: libCERTI/NetworkMessage_RW.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage_RW.cc,v
retrieving revision 3.45.2.4
retrieving revision 3.45.2.5
diff -u -b -r3.45.2.4 -r3.45.2.5
--- libCERTI/NetworkMessage_RW.cc 9 Apr 2008 14:16:32 -0000 3.45.2.4
+++ libCERTI/NetworkMessage_RW.cc 10 Apr 2008 11:35:56 -0000 3.45.2.5
@@ -16,7 +16,7 @@
// License along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: NetworkMessage_RW.cc,v 3.45.2.4 2008/04/09 14:16:32 erk Exp $
+// $Id: NetworkMessage_RW.cc,v 3.45.2.5 2008/04/10 11:35:56 erk Exp $
// ----------------------------------------------------------------------------
@@ -67,7 +67,6 @@
* ALL Network Messages will contain the following
*/
D[pdDebug] << "deserialize <" << getName().c_str()<<">"<<endl;
- D.Out(pdDebug, "deserialize <%s>", getName().c_str());
/* deserialize common part */
type =
static_cast<certi::NetworkMessage::Type>(msgBuf.read_int32());
exception = static_cast<certi::TypeException>(msgBuf.read_int32());
@@ -91,8 +90,10 @@
} /* end of deserialize */
void
-NetworkMessage::send(Socket *socket) {
+NetworkMessage::send(Socket *socket) throw (NetworkError, NetworkSignal) {
G.Out(pdGendoc,"enter NetworkMessage::send");
+ /* 0- reset send buffer */
+ msgBuf.reset();
/* 1- serialize the message
* This is a polymorphic call
* which may specialized in a daughter class
@@ -108,8 +109,13 @@
} /* end of send */
void
-NetworkMessage::receive(Socket* socket) {
+NetworkMessage::receive(Socket* socket) throw (NetworkError, NetworkSignal) {
G.Out(pdGendoc,"enter NetworkMessage::receive");
+ /* 0- Reset receive buffer */
+ /* FIXME this reset may not be necessary since we
+ * do raw-receive + assume-size
+ */
+ msgBuf.reset();
/* 1- Read 'reserved bytes' header from socket */
D.Out(pdDebug,"reading %d bytes for header",msgBuf.reservedBytes);
socket->receive(msgBuf(0), msgBuf.reservedBytes);
@@ -130,4 +136,4 @@
} // namespace certi
-// $Id: NetworkMessage_RW.cc,v 3.45.2.4 2008/04/09 14:16:32 erk Exp $
+// $Id: NetworkMessage_RW.cc,v 3.45.2.5 2008/04/10 11:35:56 erk Exp $
Index: libCERTI/NM_Classes.hh
===================================================================
RCS file: /sources/certi/certi/libCERTI/Attic/NM_Classes.hh,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -b -r1.1.2.6 -r1.1.2.7
--- libCERTI/NM_Classes.hh 9 Apr 2008 14:16:31 -0000 1.1.2.6
+++ libCERTI/NM_Classes.hh 10 Apr 2008 11:35:56 -0000 1.1.2.7
@@ -133,8 +133,8 @@
/* specific Getter/Setter */
protected:
/* specific field */
- std::string federationName ;
- std::string FEDid ;
+// std::string federationName ;
+// std::string FEDid ;
private:
};
@@ -151,7 +151,7 @@
/* specific Getter/Setter */
protected:
/* specific field */
- std::string federationName;
+// std::string federationName;
private:
};
@@ -168,12 +168,12 @@
/* specific Getter/Setter */
protected:
/* specific field */
- int32_t numberOfRegulators;
- uint32_t multicastAddress;
- uint32_t bestEffortAddress;
- uint32_t bestEffortPeer;
- std::string federationName;
- std::string federateName;
+// int32_t numberOfRegulators;
+// uint32_t multicastAddress;
+// uint32_t bestEffortAddress;
+// uint32_t bestEffortPeer;
+// std::string federationName;
+// std::string federateName;
private:
};
@@ -683,7 +683,7 @@
/* specific Getter/Setter */
protected:
/* specific field */
- ObjectHandle object;
+// ObjectHandle object;
private:
};
@@ -746,8 +746,8 @@
/* specific Getter/Setter */
protected:
/* specific field */
- InteractionClassHandle interactionClass;
- ValueLengthPair ValueArray[MAX_ATTRIBUTES_PER_CLASS];
+// InteractionClassHandle interactionClass;
+// ValueLengthPair ValueArray[MAX_ATTRIBUTES_PER_CLASS];
private:
};
@@ -889,7 +889,6 @@
void setObject(ObjectHandle object) {this->object=object;};
protected:
/* specific field */
- ObjectHandle object;
private:
};
@@ -906,8 +905,8 @@
/* specific Getter/Setter */
protected:
/* specific field */
- ObjectHandle object;
- AttributeHandle attribute;
+// ObjectHandle object;
+// AttributeHandle attribute;
private:
};
@@ -1152,9 +1151,9 @@
void setRegion(SpaceHandle region) {this->region=region;};
protected:
/* specific field */
- SpaceHandle space;
- int32_t nbExtents;
- int32_t region;
+// SpaceHandle space;
+// int32_t nbExtents;
+// int32_t region;
private:
};
@@ -1192,7 +1191,7 @@
void setRegion(SpaceHandle region) {this->region=region;};
protected:
/* specific field */
- int32_t region;
+// int32_t region;
private:
};
@@ -1329,11 +1328,11 @@
/*<END>---------- Provide_Attribute_Value_Update ------------<END>*/
/*<BEGIN>---------- Get_Fed_File ------------<BEGIN>*/
-class CERTI_EXPORT NM_Get_Fed_File : public NetworkMessage {
+class CERTI_EXPORT NM_Get_FED_File : public NetworkMessage {
public:
typedef NetworkMessage Super;
- NM_Get_Fed_File();
- virtual ~NM_Get_Fed_File();
+ NM_Get_FED_File();
+ virtual ~NM_Get_FED_File();
virtual void serialize();
virtual void deserialize();
/* specific Getter/Setter */
@@ -1346,7 +1345,7 @@
std::string getFEDLine() {return line;};
protected:
/* specific field */
- std::string FEDid;
+// std::string FEDid;
bool lineFollows;
std::string line;
private:
Index: libCERTI/ObjectClassBroadcastList.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/ObjectClassBroadcastList.cc,v
retrieving revision 3.18.2.1
retrieving revision 3.18.2.2
diff -u -b -r3.18.2.1 -r3.18.2.2
--- libCERTI/ObjectClassBroadcastList.cc 18 Mar 2008 15:55:55 -0000
3.18.2.1
+++ libCERTI/ObjectClassBroadcastList.cc 10 Apr 2008 11:35:56 -0000
3.18.2.2
@@ -19,13 +19,14 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: ObjectClassBroadcastList.cc,v 3.18.2.1 2008/03/18 15:55:55 erk Exp $
+// $Id: ObjectClassBroadcastList.cc,v 3.18.2.2 2008/04/10 11:35:56 erk Exp $
// ----------------------------------------------------------------------------
#include "ObjectClassBroadcastList.hh"
#include "PrettyDebug.hh"
+#include "NM_Classes.hh"
using std::list ;
@@ -63,8 +64,7 @@
throw RTIinternalError("Bad Message type in Broadcast's AdaptMsg.");
// Copy static informations.
- NetworkMessage *reducedMessage = new NetworkMessage ;
- reducedMessage->type = message->type ;
+ NetworkMessage *reducedMessage = NM_Factory::create(message->type);
reducedMessage->exception = message->exception ;
reducedMessage->federation = message->federation ;
reducedMessage->federate = message->federate ;
@@ -250,7 +250,7 @@
"Broadcasting message to Federate %d.", (*i)->Federate);
try {
socket = server->getSocketLink((*i)->Federate);
- message->write(socket);
+ message->send(socket);
}
catch (RTIinternalError &e) {
D.Out(pdExcept,
@@ -356,7 +356,7 @@
socket = server->getSocketLink((*i)->Federate);
#endif
G.Out(pdGendoc,"
sendPendingRAVMessage=====> write");
- currentMessage->write(socket);
+ currentMessage->send(socket);
}
catch (RTIinternalError &e) {
D.Out(pdExcept,
@@ -391,4 +391,4 @@
} // namespace certi
-// $Id: ObjectClassBroadcastList.cc,v 3.18.2.1 2008/03/18 15:55:55 erk Exp $
+// $Id: ObjectClassBroadcastList.cc,v 3.18.2.2 2008/04/10 11:35:56 erk Exp $
Index: libCERTI/InteractionBroadcastList.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/InteractionBroadcastList.cc,v
retrieving revision 3.11
retrieving revision 3.11.2.1
diff -u -b -r3.11 -r3.11.2.1
--- libCERTI/InteractionBroadcastList.cc 9 Aug 2007 09:22:45 -0000
3.11
+++ libCERTI/InteractionBroadcastList.cc 10 Apr 2008 11:35:56 -0000
3.11.2.1
@@ -19,7 +19,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: InteractionBroadcastList.cc,v 3.11 2007/08/09 09:22:45 rousse Exp $
+// $Id: InteractionBroadcastList.cc,v 3.11.2.1 2008/04/10 11:35:56 erk Exp $
// ----------------------------------------------------------------------------
@@ -97,7 +97,7 @@
InteractionBroadcastList::clear()
{
delete message ;
- message = 0 ;
+ message = NULL ;
while (!lines.empty()) {
delete lines.front();
@@ -153,7 +153,7 @@
G.Out(pdGendoc,"sendPendingMessage===>write");
- message->write(socket);
+ message->send(socket);
}
catch (RTIinternalError &e) {
D.Out(pdExcept,
@@ -177,4 +177,4 @@
} // namespace certi
-// $Id: InteractionBroadcastList.cc,v 3.11 2007/08/09 09:22:45 rousse Exp $
+// $Id: InteractionBroadcastList.cc,v 3.11.2.1 2008/04/10 11:35:56 erk Exp $
Index: libCERTI/ObjectSet.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/ObjectSet.cc,v
retrieving revision 3.18.2.1
retrieving revision 3.18.2.2
diff -u -b -r3.18.2.1 -r3.18.2.2
--- libCERTI/ObjectSet.cc 18 Mar 2008 15:55:56 -0000 3.18.2.1
+++ libCERTI/ObjectSet.cc 10 Apr 2008 11:35:57 -0000 3.18.2.2
@@ -425,7 +425,7 @@
#else
socket = server->getSocketLink(the_federate);
#endif
- msg->write(socket);
+ msg->send(socket);
}
catch (RTIinternalError &e) {
D.Out(pdExcept,
@@ -458,4 +458,4 @@
}
} // namespace certi
-// $Id: ObjectSet.cc,v 3.18.2.1 2008/03/18 15:55:56 erk Exp $
+// $Id: ObjectSet.cc,v 3.18.2.2 2008/04/10 11:35:57 erk Exp $
Index: libCERTI/InteractionBroadcastList.hh
===================================================================
RCS file: /sources/certi/certi/libCERTI/InteractionBroadcastList.hh,v
retrieving revision 3.7
retrieving revision 3.7.4.1
diff -u -b -r3.7 -r3.7.4.1
--- libCERTI/InteractionBroadcastList.hh 4 Apr 2005 14:51:24 -0000
3.7
+++ libCERTI/InteractionBroadcastList.hh 10 Apr 2008 11:35:57 -0000
3.7.4.1
@@ -17,7 +17,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: InteractionBroadcastList.hh,v 3.7 2005/04/04 14:51:24 breholee Exp $
+// $Id: InteractionBroadcastList.hh,v 3.7.4.1 2008/04/10 11:35:57 erk Exp $
// ----------------------------------------------------------------------------
#ifndef CERTI_INTERACTION_BROADCAST_LIST_HH
@@ -55,8 +55,9 @@
void addFederate(FederateHandle theFederate);
void sendPendingMessage(SecurityServer *Server);
- /*! The Message to be broadcast. This message must be allocated before
- calling the constructor of the class, be is deleted by the destructor.
+ /**
+ * The Message to be broadcasted. This message must be allocated before
+ * calling the constructor of the class, be is deleted by the destructor.
*/
NetworkMessage *message ;
@@ -70,4 +71,4 @@
#endif // CERTI_INTERACTION_BROADCAST_LIST_HH
-// $Id: InteractionBroadcastList.hh,v 3.7 2005/04/04 14:51:24 breholee Exp $
+// $Id: InteractionBroadcastList.hh,v 3.7.4.1 2008/04/10 11:35:57 erk Exp $
Index: libCERTI/NM_Classes.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/Attic/NM_Classes.cc,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -b -r1.1.2.6 -r1.1.2.7
--- libCERTI/NM_Classes.cc 9 Apr 2008 14:16:33 -0000 1.1.2.6
+++ libCERTI/NM_Classes.cc 10 Apr 2008 11:35:57 -0000 1.1.2.7
@@ -278,7 +278,7 @@
msg = new NM_Provide_Attribute_Value_Update();
break;
case NetworkMessage::GET_FED_FILE:
- msg = new NM_Get_Fed_File();
+ msg = new NM_Get_FED_File();
break;
case NetworkMessage::LAST:
throw RTIinternalError("LAST message type should not be
used!!");
@@ -1594,15 +1594,15 @@
}
/*<END>---------- Provide_Attribute_Value_Update ------------<END>*/
-/*<BEGIN>---------- Get_Fed_File ------------<BEGIN>*/
-NM_Get_Fed_File::NM_Get_Fed_File() {
+/*<BEGIN>---------- Get_FED_File ------------<BEGIN>*/
+NM_Get_FED_File::NM_Get_FED_File() {
this->name = "GET_FED_FILE";
this->type = NetworkMessage::GET_FED_FILE;
/* specific field init */
}
-NM_Get_Fed_File::~NM_Get_Fed_File() {
+NM_Get_FED_File::~NM_Get_FED_File() {
}
-void NM_Get_Fed_File::serialize() {
+void NM_Get_FED_File::serialize() {
/* call mother class */
Super::serialize();
/* specific code (if any) goes here */
@@ -1612,7 +1612,7 @@
msgBuf.write_string(line);
}
} /* end of serialize */
-void NM_Get_Fed_File::deserialize() {
+void NM_Get_FED_File::deserialize() {
/* call mother class */
Super::deserialize();
/* specific code (if any) goes here */
@@ -1622,7 +1622,7 @@
line = msgBuf.read_string();
}
} /* end of deserialize */
-/*<END>---------- Get_Fed_File ------------<END>*/
+/*<END>---------- Get_FED_File ------------<END>*/
/*<BEGIN>---------- Last ------------<BEGIN>*/
NM_Last::NM_Last() {
Index: libCERTI/Interaction.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/Interaction.cc,v
retrieving revision 3.35.2.1
retrieving revision 3.35.2.2
diff -u -b -r3.35.2.1 -r3.35.2.2
--- libCERTI/Interaction.cc 18 Mar 2008 15:55:56 -0000 3.35.2.1
+++ libCERTI/Interaction.cc 10 Apr 2008 11:35:57 -0000 3.35.2.2
@@ -19,7 +19,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: Interaction.cc,v 3.35.2.1 2008/03/18 15:55:56 erk Exp $
+// $Id: Interaction.cc,v 3.35.2.2 2008/04/10 11:35:57 erk Exp $
// ----------------------------------------------------------------------------
@@ -27,6 +27,7 @@
#include "Interaction.hh"
#include "InteractionBroadcastList.hh"
#include "PrettyDebug.hh"
+#include "NM_Classes.hh"
#include <iostream>
#include <sstream>
@@ -407,8 +408,7 @@
// Prepare and Broadcast message for this class
InteractionBroadcastList *ibList = NULL ;
if (server != NULL) {
- NetworkMessage *answer = new NetworkMessage ;
- answer->type = NetworkMessage::RECEIVE_INTERACTION ;
+ NetworkMessage *answer =
NM_Factory::create(NetworkMessage::RECEIVE_INTERACTION) ;
answer->exception = e_NO_EXCEPTION ;
answer->federation = server->federation();
answer->federate = federate_handle ;
@@ -467,8 +467,7 @@
// Prepare and Broadcast message for this class
InteractionBroadcastList *ibList = NULL ;
if (server != NULL) {
- NetworkMessage *answer = new NetworkMessage ;
- answer->type = NetworkMessage::RECEIVE_INTERACTION ;
+ NetworkMessage *answer =
NM_Factory::create(NetworkMessage::RECEIVE_INTERACTION) ;
answer->exception = e_NO_EXCEPTION ;
answer->federation = server->federation();
answer->federate = federate_handle ;
@@ -553,4 +552,4 @@
} // namespace certi
-// $Id: Interaction.cc,v 3.35.2.1 2008/03/18 15:55:56 erk Exp $
+// $Id: Interaction.cc,v 3.35.2.2 2008/04/10 11:35:57 erk Exp $
Index: libCERTI/ObjectClass.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/ObjectClass.cc,v
retrieving revision 3.41.2.1
retrieving revision 3.41.2.2
diff -u -b -r3.41.2.1 -r3.41.2.2
--- libCERTI/ObjectClass.cc 18 Mar 2008 15:55:55 -0000 3.41.2.1
+++ libCERTI/ObjectClass.cc 10 Apr 2008 11:35:57 -0000 3.41.2.2
@@ -19,7 +19,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: ObjectClass.cc,v 3.41.2.1 2008/03/18 15:55:55 erk Exp $
+// $Id: ObjectClass.cc,v 3.41.2.2 2008/04/10 11:35:57 erk Exp $
// ----------------------------------------------------------------------------
#include "Object.hh"
@@ -206,7 +206,7 @@
#else
socket = server->getSocketLink(theFederate);
#endif
- msg->write(socket);
+ msg->send(socket);
}
catch (RTIinternalError &e) {
D.Out(pdExcept,
@@ -426,8 +426,7 @@
"Object %u deleted in class %u, now broadcasting...",
the_object, handle);
- NetworkMessage *answer = new NetworkMessage ;
- answer->type = NetworkMessage::REMOVE_OBJECT ;
+ NetworkMessage *answer =
NM_Factory::create(NetworkMessage::REMOVE_OBJECT);
answer->federation = server->federation();
answer->federate = the_federate ;
answer->exception = e_NO_EXCEPTION ;
@@ -750,8 +749,7 @@
"Object %u registered in class %u, now broadcasting...",
the_object->getHandle(), handle);
- NetworkMessage *answer = new NetworkMessage ;
- answer->type = NetworkMessage::DISCOVER_OBJECT ;
+ NetworkMessage *answer =
NM_Factory::create(NetworkMessage::DISCOVER_OBJECT);
answer->federation = server->federation();
answer->federate = the_federate ;
answer->exception = e_NO_EXCEPTION ;
@@ -811,7 +809,7 @@
Socket *socket = NULL ;
try {
socket = server->getSocketLink(federate);
- message.write(socket);
+ message.send(socket);
}
catch (RTIinternalError &e) {
D.Out(pdExcept,
@@ -905,8 +903,7 @@
// Prepare and Broadcast message for this class
ObjectClassBroadcastList *ocbList = NULL ;
if (server != NULL) {
- NetworkMessage *answer = new NetworkMessage ;
- answer->type = NetworkMessage::REFLECT_ATTRIBUTE_VALUES ;
+ NetworkMessage *answer =
NM_Factory::create(NetworkMessage::REFLECT_ATTRIBUTE_VALUES);
answer->federation = server->federation();
answer->federate = the_federate ;
answer->exception = e_NO_EXCEPTION ;
@@ -970,8 +967,7 @@
// Prepare and Broadcast message for this class
ObjectClassBroadcastList *ocbList = NULL ;
if (server != NULL) {
- NetworkMessage *answer = new NetworkMessage ;
- answer->type = NetworkMessage::REFLECT_ATTRIBUTE_VALUES ;
+ NetworkMessage *answer =
NM_Factory::create(NetworkMessage::REFLECT_ATTRIBUTE_VALUES) ;
answer->federation = server->federation();
answer->federate = the_federate ;
answer->exception = e_NO_EXCEPTION ;
@@ -1057,7 +1053,7 @@
FederateHandle NewOwner ;
if (server != NULL) {
- NetworkMessage *AnswerAssumption = new NetworkMessage ;
+ NetworkMessage *AnswerAssumption =
NM_Factory::create(NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION) ;
NetworkMessage AnswerDivestiture;
AnswerAssumption->handleArraySize = theListSize ;
@@ -1127,7 +1123,6 @@
}
if (compteur_assumption !=0) {
- AnswerAssumption->type =
NetworkMessage::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION ;
AnswerAssumption->federation = server->federation();
AnswerAssumption->federate = theFederateHandle ;
AnswerAssumption->exception = e_NO_EXCEPTION ;
@@ -1209,16 +1204,13 @@
throw AttributeAlreadyBeingAcquired("");
}
- NetworkMessage *Answer_notification = new NetworkMessage ;
- Answer_notification->type =
- NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION_NOTIFICATION ;
+ NetworkMessage *Answer_notification =
NM_Factory::create(NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION_NOTIFICATION);
Answer_notification->federation = server->federation();
Answer_notification->federate = the_federate ;
Answer_notification->exception = e_NO_EXCEPTION ;
Answer_notification->object = the_object ;
- NetworkMessage *Answer_unavailable = new NetworkMessage ;
- Answer_unavailable->type =
NetworkMessage::ATTRIBUTE_OWNERSHIP_UNAVAILABLE ;
+ NetworkMessage *Answer_unavailable =
NM_Factory::create(NetworkMessage::ATTRIBUTE_OWNERSHIP_UNAVAILABLE) ;
Answer_unavailable->federation = server->federation();
Answer_unavailable->federate = the_federate ;
Answer_unavailable->exception = e_NO_EXCEPTION ;
@@ -1335,11 +1327,11 @@
int compteur_assumption = 0 ;
int compteur_acquisition = 0 ;
- NetworkMessage *AnswerAssumption = NULL ;
+ NM_Request_Attribute_Ownership_Assumption *AnswerAssumption = NULL ;
ObjectClassBroadcastList *List = NULL ;
FederateHandle NewOwner ;
if (server != NULL) {
- AnswerAssumption = new NetworkMessage ;
+ AnswerAssumption = new NM_Request_Attribute_Ownership_Assumption();
AnswerAssumption->handleArraySize = theListSize ;
CDiffusion *diffusionAcquisition = new CDiffusion();
@@ -1474,9 +1466,8 @@
throw ObjectClassNotPublished("");
}
- NetworkMessage *AnswerNotification = new NetworkMessage ;
- AnswerNotification->type =
- NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION_NOTIFICATION ;
+ NetworkMessage *AnswerNotification =
NM_Factory::create(NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION_NOTIFICATION);
+
AnswerNotification->federation = server->federation();
AnswerNotification->federate = theFederateHandle ;
AnswerNotification->exception = e_NO_EXCEPTION ;
@@ -1698,9 +1689,7 @@
throw AttributeAcquisitionWasNotRequested("");
}
- NetworkMessage *answer_confirmation = new NetworkMessage ;
- answer_confirmation->type =
-
NetworkMessage::CONFIRM_ATTRIBUTE_OWNERSHIP_ACQUISITION_CANCELLATION ;
+ NetworkMessage *answer_confirmation =
NM_Factory::create(NetworkMessage::CONFIRM_ATTRIBUTE_OWNERSHIP_ACQUISITION_CANCELLATION);
answer_confirmation->federation = server->federation();
answer_confirmation->federate = federate_handle ;
answer_confirmation->exception = e_NO_EXCEPTION ;
@@ -1829,4 +1818,4 @@
} // namespace certi
-// $Id: ObjectClass.cc,v 3.41.2.1 2008/03/18 15:55:55 erk Exp $
+// $Id: ObjectClass.cc,v 3.41.2.2 2008/04/10 11:35:57 erk Exp $
Index: libCERTI/NetworkMessage.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage.cc,v
retrieving revision 3.28.2.4
retrieving revision 3.28.2.5
diff -u -b -r3.28.2.4 -r3.28.2.5
--- libCERTI/NetworkMessage.cc 9 Apr 2008 14:16:32 -0000 3.28.2.4
+++ libCERTI/NetworkMessage.cc 10 Apr 2008 11:35:57 -0000 3.28.2.5
@@ -16,7 +16,7 @@
// License along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: NetworkMessage.cc,v 3.28.2.4 2008/04/09 14:16:32 erk Exp $
+// $Id: NetworkMessage.cc,v 3.28.2.5 2008/04/10 11:35:57 erk Exp $
// ----------------------------------------------------------------------------
@@ -35,9 +35,13 @@
// ----------------------------------------------------------------------------
NetworkMessage::NetworkMessage()
- : type(NOT_USED), exception(e_NO_EXCEPTION), isDated(false),
isLabelled(false), isTagged(false)
+ : type(NOT_USED),
+ exception(e_NO_EXCEPTION),
+ isDated(false),
+ isLabelled(false),
+ isTagged(false)
{
- name = "NetworkMessage";
+ name = "NetworkMessage (generic)";
exceptionReason[0] = '\0' ;
number = 0 ;
@@ -203,26 +207,6 @@
}
// ----------------------------------------------------------------------------
-/** read a NetworkMessage
- First read Header and upon readHeader result read or not the Body with
readBody
- @param socket
-*/
-void
-NetworkMessage::read(Socket *socket)
- throw (NetworkError, NetworkSignal)
-{
- receive(socket);
-}
-
-// ----------------------------------------------------------------------------
-void
-NetworkMessage::write(Socket *socket)
- throw (NetworkError, NetworkSignal)
-{
- send(socket);
-}
-
-// ----------------------------------------------------------------------------
void
NetworkMessage::setAHS(const AttributeHandle *attr, int size)
{
@@ -246,4 +230,4 @@
} // namespace certi
-// $Id: NetworkMessage.cc,v 3.28.2.4 2008/04/09 14:16:32 erk Exp $
+// $Id: NetworkMessage.cc,v 3.28.2.5 2008/04/10 11:35:57 erk Exp $
Index: RTIA/Communications.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/Communications.cc,v
retrieving revision 3.22.2.1
retrieving revision 3.22.2.2
diff -u -b -r3.22.2.1 -r3.22.2.2
--- RTIA/Communications.cc 18 Mar 2008 15:55:57 -0000 3.22.2.1
+++ RTIA/Communications.cc 10 Apr 2008 11:35:57 -0000 3.22.2.2
@@ -18,13 +18,14 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: Communications.cc,v 3.22.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: Communications.cc,v 3.22.2.2 2008/04/10 11:35:57 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
#include "Communications.hh"
#include <assert.h>
#include "PrettyDebug.hh"
+#include "NM_Classes.hh"
#ifdef _WIN32
#include <windows.h>
@@ -70,16 +71,14 @@
// Otherwise, wait for a message with same type than expected and with
// same federate number.
- msg = new NetworkMessage();
- msg->read((SecureTCPSocket *)this);
+ msg = NM_Factory::receive((SecureTCPSocket *) this);
D.Out(pdProtocol, "TCP Message of Type %d has arrived.", type_msg);
while ((msg->type != type_msg) ||
((numeroFedere != 0) && (msg->federate != numeroFedere))) {
waitingList.push_back(msg);
- msg = new NetworkMessage();
- msg->read((SecureTCPSocket *) this);
+ msg = NM_Factory::receive((SecureTCPSocket *) this);
D.Out(pdProtocol, "Message of Type %d has arrived.", type_msg);
}
@@ -131,10 +130,8 @@
{
// Advertise RTIG that TCP link is being closed.
- NetworkMessage msg ;
- msg.type = NetworkMessage::CLOSE_CONNEXION ;
- msg.write((SecureTCPSocket *) this);
-
+ NM_Close_Connexion closeMsg ;
+ closeMsg.send((SecureTCPSocket *) this);
SecureTCPSocket::close();
}
@@ -211,15 +208,13 @@
else if (SecureTCPSocket::isDataReady()) {
// Datas are in TCP waiting buffer.
// Read a message from RTIG TCP link.
- *msg_reseau = new NetworkMessage();
- (*msg_reseau)->read((SecureTCPSocket *) this);
+ *msg_reseau = NM_Factory::receive((SecureTCPSocket *) this);
n = 1 ;
}
else if (SocketUDP::isDataReady()) {
// Datas are in UDP waiting buffer.
// Read a message from RTIG UDP link.
- *msg_reseau = new NetworkMessage();
- (*msg_reseau)->read((SocketUDP *) this);
+ *msg_reseau = NM_Factory::receive((SocketUDP *) this);
n = 1 ;
}
else if (SocketUN::isDataReady()) {
@@ -261,14 +256,12 @@
if (FD_ISSET(SecureTCPSocket::returnSocket(), &fdset)) {
// Read a message coming from the TCP link with RTIG.
- (*msg_reseau) = new NetworkMessage();
- (*msg_reseau)->read((SecureTCPSocket *) this);
+ (*msg_reseau) = NM_Factory::receive((SecureTCPSocket *) this);
n = 1 ;
}
else if (FD_ISSET(SocketUDP::returnSocket(), &fdset)) {
// Read a message coming from the UDP link with RTIG.
- (*msg_reseau) = new NetworkMessage();
- (*msg_reseau)->read((SocketUDP *) this);
+ (*msg_reseau) = NM_Factory::receive((SocketUDP *) this);
n = 1 ;
}
else {
@@ -316,7 +309,7 @@
void
Communications::sendMessage(NetworkMessage *Msg)
{
- Msg->write((SecureTCPSocket *) this);
+ Msg->send((SecureTCPSocket *) this);
}
// ----------------------------------------------------------------------------
@@ -335,4 +328,4 @@
}} // namespace certi/rtia
-// $Id: Communications.cc,v 3.22.2.1 2008/03/18 15:55:57 erk Exp $
+// $Id: Communications.cc,v 3.22.2.2 2008/04/10 11:35:57 erk Exp $
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [certi-cvs] certi RTIG/RTIG.cc RTIG/RTIG_processing.cc RTIG... [br_DEV_HETEROGENEOUS],
certi-cvs <=