Exemple #1
0
        private void populateItemInfo(SPDGList list, ISPDGListItemInfo item, bool isDocLib)
        {
            List <string> userFields = new List <string>();

            foreach (var field in list.Fields)
            {
                if (ColumnsAndViewsGenerationTask.AvailableFieldInfos.Any(x => x.DisplayName == field.Title))
                {
                    userFields.Add(field.InternalName);
                }
            }

            string title = getFieldValue("First Name") + " " + getFieldValue("Last Name");

            if (!_titleUsage.ContainsKey(title))
            {
                _titleUsage[title] = 0;
            }
            _titleUsage[title]++;
            if (_titleUsage[title] != 1)
            {
                title += " No. " + _titleUsage[title];
            }
            item["Title"] = title;

            foreach (string fieldName in userFields)
            {
                object value = getFieldValue(fieldName);
                if (value != null)
                {
                    item[fieldName] = value;
                }
            }
        }
Exemple #2
0
        private void addDocumentToFolder(SPDGList docLib, SPDGFolder folder)
        {
            fileTypeRotator();
            byte[] fileContent = getFileContent();
            var    url         = SampleData.GetSampleValueRandom(SampleData.FirstNames) + " " + SampleData.GetSampleValueRandom(SampleData.LastNames) + " " + SampleData.GetRandomNumber(1, 30000) + "." + _currentFileType;
            var    spFile      = folder.AddFile(url, fileContent, true);
            var    fileItem    = spFile.Item;

            if (fileItem != null)
            {
                populateItemInfo(docLib, fileItem, true);
                fileItem.Update();
            }
            _docsAdded++;

            foreach (var childFolder in folder.SubFolders)
            {
                if (_docsAdded >= WorkingDefinition.MaxNumberofDocumentLibraryItemsToGenerate)
                {
                    break;
                }

                if (childFolder.Url.IndexOf("/Forms") == -1)
                {
                    addDocumentToFolder(docLib, childFolder);
                }
            }
            Owner.IncrementCurrentTaskProgress("Adding document to folder: " + folder.Url);
        }
        private void addDocumentToFolder(SPDGList docLib, SPDGFolder folder)
        {
            fileTypeRotator();
            byte[] fileContent = getFileContent();

            Random rnd         = new Random();
            int    randomValue = rnd.Next(7);
            string url         = "";

            if ((randomValue % 6) == 0)
            {
                url = SampleData.GetSampleValueRandom(SampleData.Documents) + " " + SampleData.GetSampleValueRandom(SampleData.Departments.Select(d => d.Department).ToList()) + "." + _currentFileType;
            }
            else if ((randomValue % 5) == 0)
            {
                url = SampleData.GetSampleValueRandom(SampleData.Years) + " " + SampleData.GetSampleValueRandom(SampleData.Documents) + " " + SampleData.GetSampleValueRandom(SampleData.Departments.Select(d => d.Department).ToList()) + "." + _currentFileType;
            }
            else if ((randomValue % 4) == 0)
            {
                url = SampleData.GetSampleValueRandom(SampleData.Documents) + " " + SampleData.GetSampleValueRandom(SampleData.FirstNames) + "." + _currentFileType;
            }
            else if ((randomValue % 3) == 0)
            {
                url = SampleData.GetSampleValueRandom(SampleData.Documents) + " " + SampleData.GetSampleValueRandom(SampleData.Years) + "." + _currentFileType;
            }
            else
            {
                url = SampleData.GetSampleValueRandom(SampleData.Documents) + "." + _currentFileType;
            }

            var spFile   = folder.AddFile(url, fileContent, true);
            var fileItem = spFile.Item;

            if (fileItem != null)
            {
                populateItemInfo(docLib, fileItem, true);
                fileItem.Update();
            }
            _docsAdded++;

            foreach (var childFolder in folder.SubFolders)
            {
                if (_docsAdded >= WorkingDefinition.MaxNumberofDocumentLibraryItemsToGenerate)
                {
                    break;
                }

                if (childFolder.Url.IndexOf("/Forms") == -1)
                {
                    addDocumentToFolder(docLib, childFolder);
                }
            }
            Owner.IncrementCurrentTaskProgress("Adding document to folder: " + folder.Url);
        }
Exemple #4
0
        private void shareItem(SPDGList list, SPDGListItem item)
        {
            if (list.IsDocumentLibrary && item.SupportsSharing)
            {
                // this is cached for SPO and thus fast
                var users = GetAvailableUsersInDirectory();
                Owner.IncrementCurrentTaskProgress("Sharing document '" + item.DisplayName + "' in library '" + list.Title, 0);

                var emailsForView = new HashSet <string>();
                var emailsForEdit = new HashSet <string>();
                for (int i = 0; i < _permissionsPerObject; i++)
                {
                    var emailCollection = emailsForView;
                    if (SampleData.GetRandomNumber(0, 100) < 30)
                    {
                        emailCollection = emailsForEdit;
                    }

                    if (SampleData.GetRandomNumber(0, 100) < 20)
                    {
                        // anonymous
                        emailCollection.Add("");
                    }
                    else if (SampleData.GetRandomNumber(1, 100) < 50)
                    {
                        emailCollection.Add(users[SampleData.GetRandomNumber(0, users.Count - 1)]);
                        //emailCollection.Add(getRandomSPUser().Email);
                    }
                    else
                    {
                        emailCollection.Add(SampleData.GetRandomEmail());
                    }
                }

                item.ShareWithPeople(emailsForView, false);
                item.ShareWithPeople(emailsForEdit, true);
            }
        }
Exemple #5
0
        private void populateItemInfo(SPDGList list, ISPDGListItemInfo item, bool isDocLib )
        {
            List<string> userFields = new List<string>();
            foreach(var field in list.Fields)
            {
                if( _availableFieldInfos.Any(x=>x.DisplayName==field.Title))
                {
                    userFields.Add(field.InternalName);
                }
            }

            string title = getFieldValue("First Name") + " "  + getFieldValue("Last Name");
            if (!titleUsage.ContainsKey(title))
            {
                titleUsage[title] = 0;
            }
            titleUsage[title]++;
            if (titleUsage[title] != 1)
            {
                title += " No. " + titleUsage[title];
            }
            item["Title"] = title;

            foreach( string fieldName in userFields )
            {
                object value = getFieldValue(fieldName);
                if( value != null )
                {
                    item[fieldName] = value;
                }
            }
        }
Exemple #6
0
        private void addDocumentToFolder(SPDGList docLib, SPDGFolder folder)
        {
            fileTypeRotator();
            byte[] fileContent = getFileContent();
            var url = SampleData.GetSampleValueRandom(SampleData.FirstNames) + " " + SampleData.GetSampleValueRandom(SampleData.LastNames) + " " + SampleData.GetRandomNumber(1, 30000) + "." + currentFileType;
            var spFile = folder.AddFile(url, fileContent, true);
            var fileItem = spFile.Item;
            if (fileItem != null)
            {
                populateItemInfo(docLib, fileItem, true);
                fileItem.Update();
            }
            docsAdded++;

            foreach(var childFolder in folder.SubFolders)
            {
                if( docsAdded >= workingDefinition.MaxNumberofDocumentLibraryItemsToGenerate)
                {
                    break;
                }

                if( childFolder.Url.IndexOf("/Forms") == -1  )
                {
                    addDocumentToFolder(docLib, childFolder);
                }
            }
            updateProgressDetail("Adding document to folder: " + folder.Url);
        }
Exemple #7
0
        private string findAvailableFolderName(SPDGList list)
        {
            string candidate = SampleData.GetSampleValueRandom(SampleData.Countries);

            return candidate;
        }
Exemple #8
0
        private string findAvailableFolderName(SPDGList list)
        {
            string candidate = SampleData.GetSampleValueRandom(SampleData.Countries);

            return(candidate);
        }