Ejemplo n.º 1
0
 private void UpdateActivation()
 {
     if (_observer != null)
     {
         try
         {
             DeactivateObserver();
         }
         catch (Exception e)
         {
             Logger.Warn("Failed to deactivate previously activated observer: " + e);
         }
         try
         {
             OrbServices.ActivateObject((MarshalByRefObject)_observer);
             _obsId = _theSession.subscribeObserver(_observer);
             Logger.Info("Observer subscribed");
         }
         catch (Exception e)
         {
             if (_obsId != 0)
             {
                 _theSession.unsubscribeObserver(_obsId);
             }
             Logger.Error("Error subscribing to the session: " + e);
             throw;
         }
     }
     if (_consumer != null)
     {
         try
         {
             DeactivateConsumer();
         }
         catch (Exception e)
         {
             Logger.Warn("Failed to deactivate previously activated consumer: " + e);
         }
         try
         {
             OrbServices.ActivateObject((MarshalByRefObject)_consumer);
             _subsId = _theSession.channel.subscribe(_consumer);
             Logger.Info("Consumer registered");
         }
         catch (Exception e)
         {
             if (_subsId != 0)
             {
                 _theSession.channel.unsubscribe(_subsId);
             }
             Logger.Error("Error subscribing to the channel: " + e);
             throw;
         }
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// Permite que a faceta seja vista remotamente utilizando um identificador.
 /// </summary>
 /// <param name="facetObj">A faceta.</param>
 /// <param name="id">O nome identificador da faceta.</param>
 /// <returns>Referência para o objeto remoto.</returns>
 public static ObjRef ActivateFacet(MarshalByRefObject facetObj, String id)
 {
     return(OrbServices.ActivateObject(facetObj, id));
 }