private InvokeWebAction(Cmdlet cmdlet, bool subWebs, InvokeActionParameter <Web> webActions, InvokeActionParameter <List> listActions, InvokeActionParameter <ListItem> listItemActions, bool skipCounting)
        {
            _cmdlet  = cmdlet;
            _subWebs = subWebs;

            //We will update the InvokeActionParameter parameters, thats why we create a copies.
            _webActions      = webActions.ShallowCopy();
            _listActions     = listActions.ShallowCopy();
            _listItemActions = listItemActions.ShallowCopy();

            _skipCounting = skipCounting;
        }
        public InvokeWebAction(Cmdlet cmdlet, Web web, string listName, InvokeActionParameter <Web> webActions, InvokeActionParameter <List> listActions, InvokeActionParameter <ListItem> listItemActions, bool skipCounting) :
            this(cmdlet, false, webActions, listActions, listItemActions, skipCounting)
        {
            _listName = listName;
            _webs     = new List <Web>()
            {
                web
            };

            _isListNameSpecified = true;
        }
        public InvokeWebAction(Cmdlet cmdlet, IEnumerable <Web> webs, bool subWebs, InvokeActionParameter <Web> webActions, InvokeActionParameter <List> listActions, InvokeActionParameter <ListItem> listItemActions, bool skipCounting) :
            this(cmdlet, subWebs, webActions, listActions, listItemActions, skipCounting)
        {
            _webs = webs;

            _isListNameSpecified = false;
        }