protected void configureMessage(
     final Message message, final AOObject obj, final Region region, final String action) {
   Map<String, Serializable> messageMap = null;
   if (message instanceof PropertyMessage) {
     messageMap = ((PropertyMessage) message).getPropertyMapRef();
   } else if (message instanceof WorldManagerClient.TargetedPropertyMessage) {
     messageMap = ((WorldManagerClient.TargetedPropertyMessage) message).getPropertyMapRef();
   }
   if (messageMap != null) {
     if (action != null) {
       messageMap.put("regionAction", action);
     }
     if (this.messageProperties != null) {
       messageMap.putAll(this.messageProperties);
     }
   }
   final String messageRegionProperties = (String) region.getProperty("messageRegionProperties");
   if (messageRegionProperties != null && messageMap != null) {
     this.copyProperties(messageRegionProperties, region.getPropertyMapRef(), messageMap);
   }
   final String objectProperties = (String) region.getProperty("messageObjectProperties");
   if (objectProperties != null && messageMap != null) {
     this.copyProperties(objectProperties, obj.getPropertyMap(), messageMap);
   }
   if (Log.loggingDebug && messageMap != null) {
     Log.debug("MessageRegionTrigger: properties=" + DebugUtils.mapToString(messageMap));
   }
 }