コード例 #1
0
ファイル: ScriptHost.cs プロジェクト: lanicon/ImportPipeline
 public Object CreateObject(String typeName, params Object[] parms)
 {
     if (_compiledAssembly == null)
     {
         throw new BMException("Script is not yet compiled.");
     }
     return(Objects.CreateObject(typeName, parms));
 }
コード例 #2
0
ファイル: Converters.cs プロジェクト: lanicon/ImportPipeline
        public static Converter Create(XmlNode node)
        {
            String type = node.ReadStr("@type", node.ReadStr("@name")).ToLowerInvariant();

            for (int i = 0; i < arr.Length; i++)
            {
                if (arr[i].Name != type)
                {
                    continue;
                }
                return(arr[i].Create(node));
            }
            return(Objects.CreateObject <Converter>(type, node));
        }
コード例 #3
0
ファイル: Pipeline.cs プロジェクト: lanicon/ImportPipeline
        public void Start(PipelineContext ctx)
        {
            if (trace)
            {
                ctx.ImportFlags |= _ImportFlags.TraceValues;
            }
            missed = new StringDict();
            if (ScriptTypeName != null) //NB: always create a new script object. Never reuse an existing one.
            {
                ScriptObject = Objects.CreateObject(ScriptTypeName, ctx);
                logger.Log("Script({0})={1}", ScriptTypeName, ScriptObject);
            }
            if (ImportEngine.ScriptExpressions.Count > 0) //NB: always create a new script object. Never reuse an existing one.
            {
                String cls = ImportEngine.ScriptExpressions.FullClassName;
                ScriptExprObject = Objects.CreateObject(cls, ctx);
                logger.Log("ScriptExpr({0})={1}", cls, ScriptExprObject);
            }

            //Clone the list of actions and strat them
            actions = new List <ActionAdmin>(definedActions.Count);
            for (int i = 0; i < definedActions.Count; i++)
            {
                ActionAdmin act = definedActions[i];
                act.Action.Start(ctx);
                actions.Add(act);
            }
            prepareActions();

            if (endPointCache != null)
            {
                foreach (var kvp in this.endPointCache)
                {
                    kvp.Value.Endpoint.Start(ctx);
                }
            }

            started = true;
        }
コード例 #4
0
 public static T CreateObject <T>(XmlNode node, params Object[] parms) where T : class
 {
     return(Objects.CreateObject <T>(replaceKnownTypes(node), parms));
 }
コード例 #5
0
 public static T CreateObject <T>(XmlNode node) where T : class
 {
     return(Objects.CreateObject <T>(replaceKnownTypes(node)));
 }
コード例 #6
0
 public static T CreateObject <T>(String typeName, params Object[] parms) where T : class
 {
     return(Objects.CreateObject <T>(replaceKnownTypes(typeName), parms));
 }
コード例 #7
0
 public static T CreateObject <T>(String typeName) where T : class
 {
     return(Objects.CreateObject <T>(replaceKnownTypes(typeName)));
 }