// Initialize messaging-related System Activity Monitoring
initializeSAM();
// Activate the default ACL String codec anyway
ACLCodec stringCodec = new StringACLCodec();
messageEncodings.put(stringCodec.getName().toLowerCase(), stringCodec);
// Activate the efficient encoding for intra-platform encoding
ACLCodec efficientCodec = new LEAPACLCodec();
messageEncodings.put(efficientCodec.getName().toLowerCase(), efficientCodec);
// Codecs
List l = myProfile.getSpecifiers(Profile.ACLCODECS);
Iterator codecs = l.iterator();
while (codecs.hasNext()) {
Specifier spec = (Specifier) codecs.next();
String className = spec.getClassName();
try{
Class c = Class.forName(className);
ACLCodec codec = (ACLCodec)c.newInstance();
messageEncodings.put(codec.getName().toLowerCase(), codec);
if (myLogger.isLoggable(Logger.CONFIG))
myLogger.log(Logger.CONFIG,"Installed "+ codec.getName()+ " ACLCodec implemented by " + className + "\n");
// FIXME: notify the AMS of the new Codec to update the APDescritption.
}
catch(ClassNotFoundException cnfe){
throw new jade.lang.acl.ACLCodec.CodecException("ERROR: The class " +className +" for the ACLCodec not found.", cnfe);