Exemple #1
0
        public override void EmitObject(LogicalObject obj, Vulcan.Kernel.EmitterContext context)
        {
            LogicalObject objTemp = obj;
            LogicalObject objParent;
            while ((objParent = objTemp.Parent) != null)
            {
                objTemp = objParent;
                _streamWriter.Write("\t");
            }

            _streamWriter.Write("[{0}]: {1}", obj.GetType().Name, obj.Name);

            if (obj is LogicalReference)
            {
                LogicalObject r = ((LogicalReference)obj).RefObject;
                if (r != null)
                {
                    _streamWriter.Write(" ---> {0}:{1}", r.GetType().Name, r.Name);
                }
            }

            _streamWriter.WriteLine();

            foreach (LogicalObject objChildren in obj.Children)
            {
                EmitObject(objChildren, context);
            }
        }
Exemple #2
0
        public override void EmitObject(LogicalObject obj)
        {
            LogicalObject objTemp = obj;
            LogicalObject objParent;

            while ((objParent = objTemp.Parent) != null)
            {
                objTemp = objParent;
                _streamWriter.Write("\t");
            }

            _streamWriter.Write("[{0}]: {1}", obj.GetType().Name, obj.Name);

            if (obj is LogicalReference)
            {
                LogicalObject r = ((LogicalReference)obj).RefObject;
                if (r != null)
                {
                    _streamWriter.Write(" ---> {0}:{1}", r.GetType().Name, r.Name);
                }
            }

            _streamWriter.WriteLine();

            foreach (LogicalObject objChildren in obj.Children)
            {
                EmitObject(objChildren);
            }
        }
Exemple #3
0
        public ISSISEmitter InstantiateEmitter(LogicalObject obj, SSISEmitterContext context)
        {
            Type ssisEmitterType = null;

            if (_pluginLoader.PluginTypesByAttribute.TryGetValue(new PhysicalIRMappingAttribute(obj.GetType()), out ssisEmitterType))
            {
                ConstructorInfo constructor = ssisEmitterType.GetConstructor(new Type[] { obj.GetType(), context.GetType() });
                ISSISEmitter    objEmitter  = (ISSISEmitter)constructor.Invoke(new object[] { obj, context });

                return(objEmitter);
            }
            else
            {
                _message.Trace(Severity.Error, Resources.SSISObjectEmitterNotFound, obj.GetType());

                return(null);
            }
        }