/// <summary>
        /// Remove a handler for the given source's event.
        /// </summary>
        public static void RemoveHandler(EventCallBackHandler source, IWeakEventListener listener)
        {
            if (source == null)
                throw new ArgumentNullException("source");
            if (listener == null)
                throw new ArgumentNullException("listener");

            CurrentManager.ProtectedRemoveListener(source, listener);
        }
        public void Initialize()
        {
            try
            {
                if (eventCallBackHandler == null)
                    eventCallBackHandler = new EventCallBackHandler(NotifyIcon, Controller, this);
                if (instance == null)
                    instance = new InstanceContext(eventCallBackHandler);

                EventSystemClient = new EventSystemClient(instance);

                EventSystemClient.Subscribe();
                EventSystemClient.GetFiles();
                EventSystemClient.GetTokens();
                Status = ServiceStatus.Connected;
            }
            catch (Exception)
            {

                Status = ServiceStatus.Faulted;
            }
        }