/*============================================================================*/
        /* Private Functions                                                          */
        /*============================================================================*/

        private void HandleContextView(object contextViewObject)
        {
            IContextView contextView = contextViewObject as IContextView;

            _contextView = contextView.view;

            if (!_injector.HasDirectMapping(typeof(IViewStateWatcher)))
            {
                _logger.Error("No IViewStateWatcher installed prior to Modularity Extension. The Modularity extension requires IViewStateWatcher to be installed first");
                return;
            }
            _contextViewStateWatcher = _injector.GetInstance(typeof(IViewStateWatcher)) as IViewStateWatcher;

            if (!_injector.HasDirectMapping(typeof(IParentFinder)))
            {
                _logger.Error("No IParentFinder Installed. The Modularity extension required this");
                return;
            }
            _parentFinder = _injector.GetInstance(typeof(IParentFinder)) as IParentFinder;

            if (_expose)
            {
                ConfigureExistenceWatcher();
            }
            if (_inherit)
            {
                ConfigureExistenceBroadcaster();
            }
        }
        public void Extend(IContext context)
        {
            _injector = context.injector;

            _parentFinder = new SupportParentFinder();
            _injector.Map(typeof(IParentFinder)).ToValue(_parentFinder);
            context.BeforeInitializing(BeforeInitializing);
        }
		public void Extend (IContext context)
		{
			_injector = context.injector;

			_parentFinder = new SupportParentFinder();
			_injector.Map(typeof(IParentFinder)).ToValue(_parentFinder);
			context.BeforeInitializing(BeforeInitializing);
		}
        /*============================================================================*/
        /* Constructor                                                                */
        /*============================================================================*/

        public ContextViewBasedExistenceWatcher(IContext context, object contextView, IEventDispatcher modularityDispatcher, IParentFinder parentFinder)
        {
            _logger               = context.GetLogger(this);
            _context              = context;
            _contextView          = contextView;
            _parentFinder         = parentFinder;
            _modularityDispatcher = modularityDispatcher;
            _context.WhenDestroying(Destroy);
        }
		/*============================================================================*/
		/* Constructor                                                                */
		/*============================================================================*/

		public ContextViewBasedExistenceWatcher(IContext context, object contextView, IEventDispatcher modularityDispatcher, IParentFinder parentFinder)
		{
			_logger = context.GetLogger(this);
			_context = context;
			_contextView = contextView;
			_parentFinder = parentFinder;
			_modularityDispatcher = modularityDispatcher;
			_context.WhenDestroying(Destroy);
		}
 public void SetParentFinder(IParentFinder parentFinder)
 {
     _parentFinder = parentFinder;
 }
 public void before()
 {
     parentFinder = new SupportParentFinder();
 }
		public void SetParentFinder(IParentFinder parentFinder)
		{
			_parentFinder = parentFinder;
		}
Example #9
0
        /*============================================================================*/
        /* Constructor                                                                */
        /*============================================================================*/

        public ViewManagerBasedExistenceWatcher(IContext context, object contextView, IEventDispatcher modularityDispatcher, IParentFinder parentFinder, IViewManager viewManager) : base(context, contextView, modularityDispatcher, parentFinder)
        {
            _viewManager        = viewManager;
            _acceptedContainers = new List <object> ();
        }
		/*============================================================================*/
		/* Private Functions                                                          */
		/*============================================================================*/

		private void BeforeInitializing()
		{
			if (!_injector.HasDirectMapping (typeof(IContextView)))
			{
				_logger.Error("Context has no ContextView, and ModularityExtension doesn't allow this.");
				return;
			}
			_contextView = (_injector.GetInstance(typeof(IContextView)) as IContextView).view;

			if (!_injector.HasDirectMapping (typeof(IViewStateWatcher)))
			{
				_logger.Error ("No IViewStateWatcher Installed. The Modulation extension required this");
				return;
			}
			_contextViewStateWatcher = _injector.GetInstance (typeof(IViewStateWatcher)) as IViewStateWatcher;

			if (!_injector.HasDirectMapping (typeof(IParentFinder)))
			{
				_logger.Error ("No IParentFinder Installed. The Modulation extension required this");
				return;
			}
			_parentFinder = _injector.GetInstance (typeof(IParentFinder)) as IParentFinder;

			Init ();
		}
		/*============================================================================*/
		/* Constructor                                                                */
		/*============================================================================*/

		public ViewManagerBasedExistenceWatcher (IContext context, object contextView, IEventDispatcher modularityDispatcher, IParentFinder parentFinder, IViewManager viewManager) : base (context, contextView, modularityDispatcher, parentFinder)
		{
			_viewManager = viewManager;
			_acceptedContainers = new List<object> ();
		}
		public void before()
		{
			parentFinder = new SupportParentFinder ();
		}