示例#1
0
文件: Program.cs 项目: jayvin/Courier
        static void Package(string[] args)
        {
            try
            {
                string revision = args[1];
                string url      = args[2];

                Console.WriteLine("");
                Console.WriteLine(@"       _");
                Console.WriteLine(@"      (_)");
                Console.WriteLine(@"     <___>");
                Console.WriteLine(@"      | |_________");
                Console.WriteLine(@"      | |`-._`-._(___________");
                Console.WriteLine(@"      | |`-._`-._|   :|    |(__________");
                Console.WriteLine(@"      | |    `-._|   :|    || _.-'_.-'|");
                Console.WriteLine(@"      | | _ _ _ _|._ :|    ||'_.-'_.-'|");
                Console.WriteLine(@"      | |--------|._`:|    ||'_.-'    |");
                Console.WriteLine(@"      | |        |----      |' _ _ _ _|");
                Console.WriteLine(@"      | |________|          |---------|");
                Console.WriteLine(@"      | |- - - - |____      |         |");
                Console.WriteLine(@"      | |     _.-|.--:|    ||_________|");
                Console.WriteLine(@"      | | _.-'_.-|.-':|    ||- - - - -|");
                Console.WriteLine(@"      | |'_.-'_.-|   :|    ||`-._     |");
                Console.WriteLine(@"      | |~~~~~~~~|   :|    ||`-._`-._ |");
                Console.WriteLine(@"      | |        '~~~~~~~~~~|`-._`-._`|");
                Console.WriteLine(@"      | |                   '~~~~~~~~~~");
                Console.WriteLine(@"      | |");



                string[] providers = new string[0];

                if (args.Length >= 4)
                {
                    providers = args[3].Split(',');
                }

                Umbraco.Courier.Core.Settings.revisionsPath = "";

                var engine = new Core.Packaging.RevisionPackaging(revision);
                engine.AddedItem            += new EventHandler <ItemEventArgs>(engine_AddedItem);
                engine.PackagedItem         += new EventHandler <ItemEventArgs>(engine_PackagedItem);
                engine.PackagedItemResource += new EventHandler <ResourceEventArgs>(engine_PackagedItemResource);


                Core.Storage.RepositoryStorage rs = new Core.Storage.RepositoryStorage();
                var r = rs.GetByAlias(url);
                rs.Dispose();

                engine.Source = r;

                if (providers.Length == 0)
                {
                    engine.AddAllProvidersToQueue(true);
                }
                else
                {
                    foreach (var s in providers)
                    {
                        if (s.Contains(":"))
                        {
                            string   provider = s.Split(':')[0];
                            string[] items    = s.Split(':')[1].Split(',');
                        }
                        else
                        {
                            var p = Umbraco.Courier.Core.ProviderModel.ItemProviderCollection.Instance.GetProvider(s);
                            if (p != null)
                            {
                                var rootItems = p.AvailableSystemItems();
                                engine.AddToQueue(rootItems, true, int.MaxValue);
                            }
                        }
                    }
                }


                engine.Package();

                Console.WriteLine("================ DONE =======================");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
示例#2
0
文件: Program.cs 项目: jayvin/Courier
        static void Package(string[] args)
        {
            try
            {
                string revision = args[1];
                string url = args[2];

                Console.WriteLine("");
                Console.WriteLine(@"       _");
                Console.WriteLine(@"      (_)");
                Console.WriteLine(@"     <___>");
                Console.WriteLine(@"      | |_________");
                Console.WriteLine(@"      | |`-._`-._(___________");
                Console.WriteLine(@"      | |`-._`-._|   :|    |(__________");
                Console.WriteLine(@"      | |    `-._|   :|    || _.-'_.-'|");
                Console.WriteLine(@"      | | _ _ _ _|._ :|    ||'_.-'_.-'|");
                Console.WriteLine(@"      | |--------|._`:|    ||'_.-'    |");
                Console.WriteLine(@"      | |        |----      |' _ _ _ _|");
                Console.WriteLine(@"      | |________|          |---------|");
                Console.WriteLine(@"      | |- - - - |____      |         |");
                Console.WriteLine(@"      | |     _.-|.--:|    ||_________|");
                Console.WriteLine(@"      | | _.-'_.-|.-':|    ||- - - - -|");
                Console.WriteLine(@"      | |'_.-'_.-|   :|    ||`-._     |");
                Console.WriteLine(@"      | |~~~~~~~~|   :|    ||`-._`-._ |");
                Console.WriteLine(@"      | |        '~~~~~~~~~~|`-._`-._`|");
                Console.WriteLine(@"      | |                   '~~~~~~~~~~");
                Console.WriteLine(@"      | |");

                

                string[] providers = new string[0];
                
                if(args.Length >= 4)
                    providers = args[3].Split(',');

                Umbraco.Courier.Core.Settings.revisionsPath = "";

                var engine = new Core.Packaging.RevisionPackaging(revision);
                engine.AddedItem += new EventHandler<ItemEventArgs>(engine_AddedItem);
                engine.PackagedItem += new EventHandler<ItemEventArgs>(engine_PackagedItem);
                engine.PackagedItemResource += new EventHandler<ResourceEventArgs>(engine_PackagedItemResource);

                
                Core.Storage.RepositoryStorage rs = new Core.Storage.RepositoryStorage();
                var r = rs.GetByAlias(url);
                rs.Dispose();

                engine.Source = r;
                
                if (providers.Length == 0)
                    engine.AddAllProvidersToQueue(true);
                else
                {
                    foreach (var s in providers)
                    {
                        if (s.Contains(":"))
                        {
                            string provider = s.Split(':')[0];
                            string[] items = s.Split(':')[1].Split(',');

                        }
                        else
                        {
                            var p = Umbraco.Courier.Core.ProviderModel.ItemProviderCollection.Instance.GetProvider(s);
                            if (p != null)
                            {
                                var rootItems = p.AvailableSystemItems();
                                engine.AddToQueue(rootItems, true, int.MaxValue);
                            }
                        }
                    }
                }


                engine.Package();

                Console.WriteLine("================ DONE =======================");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
示例#3
0
文件: Program.cs 项目: jayvin/Courier
        static void Extract(string[] args)
        {
            string error;

            Console.Write("Building dependency graph from directory " + directory + "...");
            try
            {
                //Umbraco.Courier.Core.Services.Extractor ex = new Core.Services.Extractor(directory);
                var engine = new Core.Extraction.RevisionExtraction(directory);
                engine.ExtractingItem          += new EventHandler <Core.ItemEventArgs>(ex_ExtractingItem);
                engine.ExtractingItemResources += new EventHandler <Core.ItemEventArgs>(engine_ExtractingItemResources);

                engine.PopulateGraph();


                int totalItems = engine.ExtractionGraph.CountUnique();

                Console.Write("DONE, " + totalItems.ToString() + " items graphed");

                Console.WriteLine("");
                Console.WriteLine("");

                Console.WriteLine("Continue? (Y/N)");
                Console.WriteLine("");
                Console.WriteLine("");


                if (Console.ReadKey().KeyChar.ToString().ToLower() == "y")
                {
                    if (string.IsNullOrEmpty(url))
                    {
                        Console.WriteLine("Website to connect to?");
                        url = Console.ReadLine();
                    }

                    Umbraco.Courier.Core.Storage.RepositoryStorage rs = new Core.Storage.RepositoryStorage();
                    var r = rs.GetByAlias(url);
                    rs.Dispose();

                    engine.Destination = r;

                    //this is handled by the config instead
                    //engine.ResourceOverwritemode = Core.Enums.OverwriteMode.Always;
                    //engine.ItemOverwritemode = Core.Enums.OverwriteMode.Always;
                    //engine.DependencyOverwritemode = Core.Enums.OverwriteMode.Always;


                    Console.WriteLine("");
                    Console.WriteLine("");


                    Console.WriteLine("");
                    Console.WriteLine("");

                    //builds the graph of dependencies

                    Console.WriteLine("Extracting all items in the graph, and sending them to the server...");
                    Console.WriteLine("This will take some time, so admire this lovely buddha in the meantime...");
                    Console.WriteLine("");

                    Console.WriteLine(@"                           _");
                    Console.WriteLine(@"                        _ooOoo_");
                    Console.WriteLine(@"                       o8888888o");
                    Console.WriteLine(@"                       88' . '88");
                    Console.WriteLine(@"                       (| -_- |)");
                    Console.WriteLine(@"                       O\  =  /O");
                    Console.WriteLine(@"                    ____/`---'\____");
                    Console.WriteLine(@"                  .'  \\|     |//  `.");
                    Console.WriteLine(@"                 /  \\|||  :  |||//  \");
                    Console.WriteLine(@"                /  _||||| -:- |||||_  \");
                    Console.WriteLine(@"                |   | \\\  -  /'| |   |");
                    Console.WriteLine(@"                | \_|  `\`---'//  |_/ |");
                    Console.WriteLine(@"                \  .-\__ `-. -'__/-.  /");
                    Console.WriteLine(@"              ___`. .'  /--.--\  `. .'___");
                    Console.WriteLine(@"           ."" '<  `.___\_<|>_/___.' _> \"".");
                    Console.WriteLine(@"          | | :  `- \`. ;`. _/; .'/ /  .' ; |");
                    Console.WriteLine(@"          \  \ `-.   \_\_`. _.'_/_/  -' _.' /");
                    Console.WriteLine(@"===========`-.`___`-.__\ \___  /__.-'_.'_.-'================");
                    Console.WriteLine(@"                        `=--=-'                   ");

                    Console.WriteLine("");

                    engine.Extract();


                    Console.WriteLine("");
                    Console.WriteLine("");
                    Console.WriteLine("======================================");
                    Console.WriteLine("Whooaah, DONE! ");
                    Console.WriteLine("======================================");

                    engine.ExtractionGraph.ToMindmap().Save("mindmap.bmd");
                    engine.Dispose();
                }
                else
                {
                    Console.WriteLine("");
                    Console.WriteLine("");
                    Console.WriteLine("======================================");
                    Console.WriteLine("Operation cancelled...");
                    Console.WriteLine("======================================");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("");
                Console.WriteLine("");
                Console.WriteLine("======================================");
                Umbraco.Courier.Core.Helpers.Logging._Debug(ex.ToString());
                Console.WriteLine(ex.ToString());
                Console.WriteLine("======================================");
                Console.Read();
            }
        }
示例#4
0
文件: Program.cs 项目: jayvin/Courier
        static void Extract(string[] args)
        {
            string error;

            Console.Write("Building dependency graph from directory " + directory + "...");
            try
            {   
                //Umbraco.Courier.Core.Services.Extractor ex = new Core.Services.Extractor(directory);
                var engine = new Core.Extraction.RevisionExtraction(directory);
                engine.ExtractingItem += new EventHandler<Core.ItemEventArgs>(ex_ExtractingItem);
                engine.ExtractingItemResources += new EventHandler<Core.ItemEventArgs>(engine_ExtractingItemResources);

                engine.PopulateGraph();

                    
                int totalItems = engine.ExtractionGraph.CountUnique();

                Console.Write("DONE, " + totalItems.ToString() + " items graphed");

                Console.WriteLine("");
                Console.WriteLine("");

                Console.WriteLine("Continue? (Y/N)");
                Console.WriteLine("");
                Console.WriteLine("");


                if (Console.ReadKey().KeyChar.ToString().ToLower() == "y")
                {
                    if (string.IsNullOrEmpty(url))
                    {
                        Console.WriteLine("Website to connect to?");
                        url = Console.ReadLine();
                    }

                    Umbraco.Courier.Core.Storage.RepositoryStorage rs = new Core.Storage.RepositoryStorage();
                    var r = rs.GetByAlias(url);
                    rs.Dispose();

                    engine.Destination = r;

                    //this is handled by the config instead
                    //engine.ResourceOverwritemode = Core.Enums.OverwriteMode.Always;
                    //engine.ItemOverwritemode = Core.Enums.OverwriteMode.Always;
                    //engine.DependencyOverwritemode = Core.Enums.OverwriteMode.Always;
                    

                    Console.WriteLine("");
                    Console.WriteLine("");

                   
                        Console.WriteLine("");
                        Console.WriteLine("");

                        //builds the graph of dependencies

                        Console.WriteLine("Extracting all items in the graph, and sending them to the server...");
                        Console.WriteLine("This will take some time, so admire this lovely buddha in the meantime...");
                        Console.WriteLine("");

                        Console.WriteLine(@"                           _");
                        Console.WriteLine(@"                        _ooOoo_");
                        Console.WriteLine(@"                       o8888888o");
                        Console.WriteLine(@"                       88' . '88");
                        Console.WriteLine(@"                       (| -_- |)");
                        Console.WriteLine(@"                       O\  =  /O");
                        Console.WriteLine(@"                    ____/`---'\____");
                        Console.WriteLine(@"                  .'  \\|     |//  `.");
                        Console.WriteLine(@"                 /  \\|||  :  |||//  \");
                        Console.WriteLine(@"                /  _||||| -:- |||||_  \");
                        Console.WriteLine(@"                |   | \\\  -  /'| |   |");
                        Console.WriteLine(@"                | \_|  `\`---'//  |_/ |");
                        Console.WriteLine(@"                \  .-\__ `-. -'__/-.  /");
                        Console.WriteLine(@"              ___`. .'  /--.--\  `. .'___");
                        Console.WriteLine(@"           ."" '<  `.___\_<|>_/___.' _> \"".");
                        Console.WriteLine(@"          | | :  `- \`. ;`. _/; .'/ /  .' ; |");
                        Console.WriteLine(@"          \  \ `-.   \_\_`. _.'_/_/  -' _.' /");
                        Console.WriteLine(@"===========`-.`___`-.__\ \___  /__.-'_.'_.-'================");
                        Console.WriteLine(@"                        `=--=-'                   ");

                        Console.WriteLine("");
                        
                    engine.Extract();


                        Console.WriteLine("");
                        Console.WriteLine("");
                        Console.WriteLine("======================================");
                        Console.WriteLine("Whooaah, DONE! ");
                        Console.WriteLine("======================================");

                    engine.ExtractionGraph.ToMindmap().Save("mindmap.bmd");
                    engine.Dispose();
                }
                else
                {
                    Console.WriteLine("");
                    Console.WriteLine("");
                    Console.WriteLine("======================================");
                    Console.WriteLine("Operation cancelled...");
                    Console.WriteLine("======================================");
                }

            }
            catch (Exception ex)
            {
                Console.WriteLine("");
                Console.WriteLine("");
                Console.WriteLine("======================================");
                Umbraco.Courier.Core.Helpers.Logging._Debug(ex.ToString());
                Console.WriteLine(ex.ToString());
                Console.WriteLine("======================================");
                Console.Read();
            }
        }