コード例 #1
0
 public static TM_Xml_Database   handle_UserData_GitLibraries(this TM_Xml_Database tmDatabase)
 {
     try
     {
         var tmFileStorage = TM_FileStorage.Current;
         if (WebUtils.online())
         {
             "[TM_Xml_Database] [handle_UserData_GitLibraries] online, so checking for TM UserData repos to clone".info();
         }
         else
         {
             "[TM_Xml_Database] [handle_UserData_GitLibraries] online".info();
         }
         foreach (var gitLibrary in tmFileStorage.UserData.SecretData.Libraries_Git_Repositories)
         {
             if (gitLibrary.regEx("Lib_.*.git"))
             {
                 var libraryName  = gitLibrary.split("Lib_").last().remove(".git").replace("_", " ");
                 var targetFolder = tmFileStorage.Path_XmlLibraries.pathCombine(libraryName);
                 if (targetFolder.dirExists().isFalse())
                 {
                     "[TM_Xml_Database] [handle_UserData_GitLibraries] cloning {0}".info(libraryName);
                     tmDatabase.clone_Library(gitLibrary, targetFolder);
                     //gitLibrary.git_Clone(targetFolder);
                 }
                 else
                 {
                     "[TM_Xml_Database] [handle_UserData_GitLibraries] skipping git clone since there was already a library called: {0}".info(libraryName);
                 }
             }
             else
             {
                 "[handle_UserData_GitLibraries] provided git library didn't fit expected format (it should be called Lib_{LibName}.git, and it was: {0}".error(gitLibrary);
             }
         }
     }
     catch (Exception ex)
     {
         ex.log("handle_UserData_GitLibraries");
     }
     return(tmDatabase);
 }