Ejemplo n.º 1
0
 public override void Execute(IProgressMonitor monitor, IBuildTarget item, ExecutionContext context, ConfigurationSelector configuration)
 {
     if (item is SolutionEntityItem)
     {
         SolutionEntityItem        entry = (SolutionEntityItem)item;
         SolutionItemConfiguration conf  = entry.GetConfiguration(configuration) as SolutionItemConfiguration;
         if (conf != null && conf.CustomCommands.HasCommands(CustomCommandType.Execute))
         {
             conf.CustomCommands.ExecuteCommand(monitor, entry, CustomCommandType.Execute, context, configuration);
             return;
         }
         entry.OnExecute(monitor, context, configuration);
     }
     else if (item is WorkspaceItem)
     {
         ((WorkspaceItem)item).OnExecute(monitor, context, configuration);
     }
     else if (item is SolutionItem)
     {
         ((SolutionItem)item).OnExecute(monitor, context, configuration);
     }
     else
     {
         throw new InvalidOperationException("Unknown item type: " + item);
     }
 }