Example #1
0
 /// <summary>
 /// Loads TypeInfo into a list.
 /// </summary>
 /// <param name="list">List</param>
 /// <param name="module">Module</param>
 public static void LoadTypeInfoInto(IList<CodeDomInfo> list, IOTAServiceProvider module)
 {
     if (module == null)
     {
         return;
     }
     IOTACodeDomProvider _CodeDomProvider = (IOTACodeDomProvider)module.GetService(typeof(IOTACodeDomProvider));
     if (_CodeDomProvider == null)
     {
         LoggingService.Debug("null code dom provider");
         return;
     }
     IOTACodeDomFile _CodeDomFile = _CodeDomProvider.CodeDomFile;
     if (_CodeDomFile == null)
     {
         LoggingService.Debug("null code dom file");
         return;
     }
     CodeObject _CodeObject = _CodeDomFile.GetDom();
     if (_CodeObject == null)
     {
         LoggingService.Debug("null code object");
         return;
     }
     CodeCompileUnit _CodeCompileUnit = (CodeCompileUnit)_CodeObject;
     for (int i = 0; i < _CodeCompileUnit.Namespaces.Count; i++)
     {
         CodeNamespace _CodeNamespace = _CodeCompileUnit.Namespaces[i];
         for (int j = 0; j < _CodeNamespace.Types.Count; j++)
         {
             CodeTypeDeclaration _CodeTypeDeclaration = _CodeNamespace.Types[j];
             LoadTypeInfoInto(list, _CodeTypeDeclaration);
         }
     }
 }
Example #2
0
        /// <summary>
        /// Loads method info into a list.
        /// </summary>
        /// <param name="list">List</param>
        /// <param name="module">Module</param>
        public static void LoadMethodInfoInto(IList<CodeDomInfo> list, IOTAServiceProvider module)
        {
            if (module == null)
            {
                return;
            }
            IOTACodeDomProvider _CodeDomProvider = (IOTACodeDomProvider)module.GetService(typeof(IOTACodeDomProvider));
            if (_CodeDomProvider == null)
            {
                LoggingService.Debug("null code dom provider");
                return;
            }
            IOTACodeDomFile _CodeDomFile = _CodeDomProvider.CodeDomFile;
            if (_CodeDomFile == null)
            {
                LoggingService.Debug("null code dom file");
                return;
            }
            CodeObject _CodeObject = _CodeDomFile.GetDom();
            if (_CodeObject == null)
            {
                LoggingService.Debug("null code object");
                return;
            }
            // unit object.
            CodeCompileUnit _CodeCompileUnit = (CodeCompileUnit)_CodeObject;
            for (int i = 0; i < _CodeCompileUnit.Namespaces.Count; i++)
            {
                // namespace object.
                CodeNamespace _CodeNamespace = _CodeCompileUnit.Namespaces[i];
                for (int j = 0; j < _CodeNamespace.Types.Count; j++)
                {
                    CodeTypeDeclaration _CodeTypeDeclaration = _CodeNamespace.Types[j];
                    if (_CodeTypeDeclaration.IsClass || _CodeTypeDeclaration.IsInterface)
                    {
                        // class, interface.
                        string _ClassName = _CodeTypeDeclaration.Name;
                        for (int k = 0; k < _CodeTypeDeclaration.Members.Count; k++)
                        {
                            CodeTypeMember _CodeTypeMember = _CodeTypeDeclaration.Members[k];
                            CodeMemberMethod method = _CodeTypeMember as CodeMemberMethod;
                            if (method != null)
                            {
                                LoadMethodInto(list, method, _ClassName);
                            }
                            CodeTypeDeclaration type = _CodeTypeMember as CodeTypeDeclaration;
                            if (type != null)
                            {
                                LoadTypeMemberInto(list, type);
                            }
                            CodeMemberProperty _CodeMemberProperty = _CodeTypeMember as CodeMemberProperty;
                            if (_CodeMemberProperty == null)
                            {
                                LoggingService.Warn("something else is here. such as fields");
                                return;
                            }
                            if (_CodeMemberProperty.HasGet)
                            {
                                if (_CodeMemberProperty.GetStatements.Count > 0)
                                {
                                    LoadPropertyInto(list,
                                                       _CodeMemberProperty,
                                                         _CodeMemberProperty.GetStatements[0],
                                                         true,
                                                         _ClassName);
                                }
                                else
                                {
                                    LoadPropertyInto(list, _CodeMemberProperty,
                                                         null,
                                                         true,
                                                         _ClassName);

                                }
                            }
                            if (_CodeMemberProperty.HasSet)
                            {
                                if (_CodeMemberProperty.SetStatements.Count > 0)
                                {
                                    LoadPropertyInto(list, _CodeMemberProperty,
                                                         _CodeMemberProperty.SetStatements[0],
                                                         false,
                                                         _ClassName);
                                }
                                else
                                {
                                    LoadPropertyInto(list, _CodeMemberProperty,
                                                         null,
                                                         false,
                                                         _ClassName);
                                }
                            }
                        }
                    }
                }
            }
        }
Example #3
0
        /// <summary>
        /// Verifies designer if active.
        /// </summary>
        /// <param name="module">Module</param>
        /// <returns></returns>
        public static bool GetDesignerIsActive(IOTAServiceProvider module)
        {
            if (module != null)
            {
                IOTADotNetModule _DotNetModule = (IOTADotNetModule)module.GetService(typeof(IOTADotNetModule));

                if (_DotNetModule != null)
                {
                    return _DotNetModule.DesignerActive;
                }
            }

            return false;
        }
Example #4
0
 /// <summary>
 /// Loads EventInfo into a list.
 /// </summary>
 /// <param name="list">List</param>
 /// <param name="module">Module</param>
 public static void LoadEventInfoInto(IList<CodeDomInfo> list, IOTAServiceProvider module)
 {
     if (module == null)
     {
         return;
     }
     IOTACodeDomProvider _CodeDomProvider = (IOTACodeDomProvider)module.GetService(typeof(IOTACodeDomProvider));
     if (_CodeDomProvider == null)
     {
         LoggingService.Debug("null code dom provider");
         return;
     }
     IOTACodeDomFile _CodeDomFile = _CodeDomProvider.CodeDomFile;
     if (_CodeDomFile == null)
     {
         LoggingService.Debug("null code dom file");
         return;
     }
     CodeObject _CodeObject = _CodeDomFile.GetDom();
     if (_CodeObject == null)
     {
         LoggingService.Debug("null code object");
         return;
     }
     CodeCompileUnit _CodeCompileUnit = (CodeCompileUnit)_CodeObject;
     for (int i = 0; i < _CodeCompileUnit.Namespaces.Count; i++)
     {
         CodeNamespace _CodeNamespace = _CodeCompileUnit.Namespaces[i];
         for (int j = 0; j < _CodeNamespace.Types.Count; j++)
         {
             CodeTypeDeclaration _CodeTypeDeclaration = _CodeNamespace.Types[j];
             if (_CodeTypeDeclaration.IsClass || _CodeTypeDeclaration.IsInterface)
             {
                 string _ClassName = _CodeTypeDeclaration.Name;
                 for (int k = 0; k < _CodeTypeDeclaration.Members.Count; k++)
                 {
                     CodeTypeMember _CodeTypeMember = _CodeTypeDeclaration.Members[k];
                     if (_CodeTypeMember is CodeMemberEvent)
                     {
                         LoadEventInfoInto(list, _CodeTypeMember, _ClassName);
                     }
                     else if (_CodeTypeMember is CodeTypeDeclaration)
                     {
                         LoadEventInfoInto(list, _CodeTypeMember);
                     }
                 }
             }
         }
     }
 }        
Example #5
0
        /// <summary>
        /// Gets designer from module.
        /// </summary>
        /// <param name="module">Module</param>
        /// <returns>null if not.</returns>
        public static IDesignerHost GetDesignerForModule(IOTAServiceProvider module)
        {
            if (module != null)
            {
                IOTADotNetModule _DotNetModule = (IOTADotNetModule)module.GetService(typeof(IOTADotNetModule));

                if (_DotNetModule != null)
                {
                    IDesignerHost _Designer = _DotNetModule.DesignerHost;

                    return _Designer;
                }
            }

            return null;
        }