Esempio n. 1
0
        /// <returns>
        /// <see cref="ServiceResponsePlanSummaryModel"/>
        /// </returns>
        protected override async Task <string> RunAsync(HttpClient client)
        {
            var destinationCredential = new SharePointCredential
            {
                AccountName    = sharepointAccount,
                AppProfileName = "<app profile name>"
            };

            var mappingContent = new FSMappingContent
            {
                Source = new FSPath
                {
                    Path = "<path>",
                },
                Destination = new FSMigrationSharePointObject
                {
                    Url   = "<sharepoint library url>",
                    Level = "Library"
                },
                Method = "AttachAsChild",
            };

            var mappings = new FSMappingModel
            {
                SourceConnectionId    = sourceConnectionId,
                DestinationCredential = destinationCredential,
                Contents = new List <FSMappingContent>
                {
                    mappingContent
                },
            };

            var planSettings = new FSPlanSettingsModel
            {
                NameLabel = new PlanNameLabel
                {
                    Name         = $"CSharp_FS_Plan_{DateTime.Now.ToString("yyyyMMddHHmmss")}",
                    BusinessUnit = "<BusinessUnit name>",
                    Wave         = "<Wave name>",
                },
                MigrationMode = "HighSpeed",
                PolicyId      = migrationPolicyId,
                Schedule      = new ScheduleModel
                {
                    IntervalType = "OnlyOnce",
                    StartTime    = DateTime.Now.AddMinutes(2),
                },
                DatabaseId = migrationDatabaseId,
            };

            var plan = new FSPlanModel
            {
                Mappings = mappings,
                Settings = planSettings,
            };

            plan.Validate();

            var requestContent = JsonConvert.SerializeObject(plan);

            var content = new StringContent(requestContent, Encoding.UTF8, "application/json");

            var response = await client.PostAsync("/api/filesystem/plans", content);

            return(await response.Content.ReadAsStringAsync());
        }
Esempio n. 2
0
        /// <returns>
        /// <see cref="ServiceResponseString"/>
        /// </returns>
        protected override async Task <string> RunAsync(HttpClient client)
        {
            var sourceAccount = new AccountModel
            {
                Username = "******",
                Password = "******",
            };

            var destinationAccount = new AccountModel
            {
                Username = "******",
                Password = "******",
            };

            var mappingContent = new FSMappingContent
            {
                Source = new FSPath
                {
                    Path = "<path>",
                },
                Destination = new SharePointObject
                {
                    Url   = "<sharepoint library url>",
                    Level = "Library"
                }
            };

            var mappings = new FSMappingModel
            {
                SourceAccount      = sourceAccount,
                DestinationAccount = destinationAccount,
                Contents           = new List <FSMappingContent>
                {
                    mappingContent
                },
            };

            var settings = new FSJobExecutionSettingsModel
            {
                MigrationMode = "HighSpeed",
                PolicyId      = "Default_FileMigration_Profile",
                Schedule      = new ScheduleModel
                {
                    IntervalType = "OnlyOnce",
                    StartTime    = DateTime.Now.AddMinutes(2),
                },
            };

            var model = new FSJobExecutionModel
            {
                Mappings = mappings,
                Settings = settings,
            };

            var requestContent = JsonConvert.SerializeObject(model);

            var content = new StringContent(requestContent, Encoding.UTF8, "application/json");

            var response = await client.PostAsync($"/api/filesystem/jobs", content);

            return(await response.Content.ReadAsStringAsync());
        }