public static void ReadFromDisk(string path, bool structure)
        {
            try
            {
                // actually read it in....
                if (Directory.Exists(path))
                {
                    foreach (string file in Directory.GetFiles(path, "*.config"))
                    {
                        XmlDocument xmlDoc = new XmlDocument();
                        xmlDoc.Load(file);

                        XmlNode node = xmlDoc.SelectSingleNode("//MemberType");

                        if (node != null)
                        {
                            MemberTypeHelper.Import(node, structure);
                        }
                    }

                    foreach (string folder in Directory.GetDirectories(path))
                    {
                        ReadFromDisk(folder, structure);
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Info <SyncMemberType>("Read MemberType Failed {0}", () => ex.ToString());
                throw new SystemException(String.Format("Read MemberType failed {0}", ex.ToString()));
            }
        }
 public static void SaveToDisk(MemberType item)
 {
     if (item != null)
     {
         try
         {
             XmlDocument xmlDoc = helpers.XmlDoc.CreateDoc();
             xmlDoc.AppendChild(MemberTypeHelper.ToXml(xmlDoc, item));
             // xmlDoc.AddMD5Hash();
             helpers.XmlDoc.SaveXmlDoc(item.GetType().ToString(), GetMemberPath(item), "def", xmlDoc);
         }
         catch (Exception ex)
         {
             LogHelper.Info <SyncMemberType>("uSync: Error Saving Member Type {0}, {1}",
                                             () => item.Text, () => ex.ToString());
         }
     }
 }