public void UnregisterByString(UnityEventEventInfo unityEvent, string eventTypeString)
        {
            Type parameterType = GenericFactory <EventInfoBase> .GetFactoryObjectType(eventTypeString);

            if (!unityEventListeners.ContainsKey(parameterType) || unityEventListeners[parameterType] == null)
            {
                return;
            }
            unityEventListeners[parameterType].Remove(unityEvent);
        }
        public void RegisterByString(UnityEventEventInfo unityEvent, string eventTypeString)
        {
            Type parameterType = GenericFactory <EventInfoBase> .GetFactoryObjectType(eventTypeString);

            if (unityEventListeners == null)
            {
                unityEventListeners = new Dictionary <Type, List <UnityEventEventInfo> >();
            }

            if (!unityEventListeners.ContainsKey(parameterType) || unityEventListeners[parameterType] == null)
            {
                unityEventListeners[parameterType] = new List <UnityEventEventInfo>();
            }

            unityEventListeners[parameterType].Add(unityEvent);
        }