code: public void start() {
  		this.logger.info( "The DM is about to be launched." );
  
  		// Start the messaging
  		DmMessageProcessor messageProcessor = new DmMessageProcessor( this );
  		this.messagingClient = new RCDm( this.applicationMngr );
  		this.messagingClient.setDomain( this.domain );
  		this.messagingClient.associateMessageProcessor( messageProcessor );
  		this.messagingMngr.setMessagingClient( this.messagingClient );
  
  		// Start the target configurator
  		this.targetConfigurator.start();
  
  		// Run the timer
  		this.timer = new Timer( "Roboconf's Management Timer", false );
  		this.timer.scheduleAtFixedRate( new CheckerForStoredMessagesTask( this.applicationMngr, this.messagingMngr ), 0, TIMER_PERIOD );
  		this.timer.scheduleAtFixedRate( new CheckerForTargetsConfigurationTask( this.targetConfigurator ), 0, TIMER_PERIOD );
  		this.timer.scheduleAtFixedRate(
  				new CheckerForHeartbeatsTask( this.applicationMngr, this.notificationMngr ),
  				0, Constants.HEARTBEAT_PERIOD );
  
  		// Configure the messaging
  		reconfigure();
  
  		// Restore what is necessary
  		this.applicationTemplateMngr.restoreTemplates();
  		this.applicationMngr.restoreApplications();
  
  		// We must update instance states after we restored applications
  		restoreAllInstances();
  
  		// Enable notifications to listeners
  		this.notificationMngr.enableNotifications();
  
  		this.logger.info( "The DM was launched." );
  	}
docs: Starts the manager.
  <p>
  It is invoked by iPojo when an instance becomes VALID.
  </p>