Example #1
0
        public Computation ResolveUri(TaskMaster task_master, string uri, out LibraryFailure reason)
        {
            var type = loader.ResolveUri(uri, out reason);

            if (reason != LibraryFailure.None || type == null)
            {
                return(null);
            }
            if (!typeof(Computation).IsAssignableFrom(type))
            {
                throw new InvalidCastException(String.Format(
                                                   "Class {0} for URI {1} from {2} is not a computation.", type, uri, UriName));
            }
            return((Computation)Activator.CreateInstance(type, task_master));
        }