Beispiel #1
0
        public static ModuleProviderCLPair Analyze(
            EPCompiled compiled,
            ClassLoader classLoaderParent,
            PathRegistry <String, ClassProvided> classProvidedPathRegistry)
        {
            var classLoader       = new PriorityClassLoader(classLoaderParent, compiled.Assemblies);
            var resourceClassName = compiled.Manifest.ModuleProviderClassName;

            // load module resource class
            Type clazz;

            try {
                clazz = classLoader.GetClass(resourceClassName);
            }
            catch (Exception e) {
                throw new EPException(e);
            }

            // instantiate
            ModuleProvider moduleResource;

            try {
                moduleResource = (ModuleProvider)TypeHelper.Instantiate(clazz);
            }
            catch (EPException) {
                throw;
            }
            catch (Exception e) {
                throw new EPException(e);
            }

            return(new ModuleProviderCLPair(classLoader, moduleResource));
        }
Beispiel #2
0
        public void AwaitAndRun()
        {
            _latch.Await();

            // load underlying class of Json types
            foreach (var jsonEventType in _eventTypes.OfType <JsonEventType>())
            {
                var classLoader = new PriorityClassLoader(_parentClassLoader, _assemblies);
                jsonEventType.Initialize(classLoader);
            }
        }