Model/OneDrivePolicyCreationModel.ps1
|
# # Fly SDK API # No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # Version: 1.0 # Contact: support@avepoint.com # Generated by OpenAPI Generator: https://openapi-generator.tech # <# .SYNOPSIS No summary available. .DESCRIPTION No description available. .PARAMETER IsMigrateMeetingRecords No description available. .PARAMETER IsDirectPermission No description available. .PARAMETER IsSharedLink No description available. .PARAMETER IsConfigureFilterPolicy No description available. .PARAMETER EnableShared No description available. .PARAMETER FilterPolicyId No description available. .PARAMETER ScopeCondition * `OnlyLibrary` = 0 * `All` = 1 .PARAMETER ContainerConflictResolution * `Skip` = 0 * `Overwrite` = 1 * `Merge` = 2 * `OverwriteByLastModifiedTime` = 3 * `Append` = 4 .PARAMETER ContentConflictResolution * `Skip` = 0 * `Overwrite` = 1 * `Merge` = 2 * `OverwriteByLastModifiedTime` = 3 * `Append` = 4 .PARAMETER EnableSyncDeletion No description available. .PARAMETER ManageLabelCondition * `KeepExisting` = 0 * `DoNotCopy` = 1 * `ApplySame` = 2 * `ConfigureCustom` = 3 .PARAMETER IsRemoveSourceIRM No description available. .PARAMETER DefaultReplacementUser No description available. .PARAMETER LabelMappingProfileId No description available. .PARAMETER ContentTypeMappingProfileId No description available. .PARAMETER UserMappingProfileId No description available. .PARAMETER UserMappingRules No description available. .PARAMETER Name No description available. .PARAMETER Description No description available. .PARAMETER MigrationModuleType * `Exchange` = 0 * `Teams` = 1 * `SharePoint` = 2 * `OneDrive` = 3 * `M365Group` = 4 * `TeamChat` = 5 * `HostedExchange` = 6 * `PowerPlatform` = 7 * `Gmail` = 8 * `GoogleDrive` = 9 * `ActiveDirectory` = 10 * `Entra` = 11 * `DeviceToActiveDirectory` = 14 * `SPOToGDrive` = 21 * `ODriveToGDrive` = 22 * `GDriveToGDrive` = 23 * `ExchangeToGmail` = 24 * `TeamsToGoogleChat` = 25 * `TeamChatToGoogleDM` = 26 * `M365GroupToGoogleGroup` = 27 * `TeamChatToGoogleChat` = 28 .PARAMETER Notification No description available. .PARAMETER IsDefault No description available. .PARAMETER CustomizeFeatures No description available. .OUTPUTS OneDrivePolicyCreationModel<PSCustomObject> #> function Initialize-FlyOneDrivePolicyCreationModel { [CmdletBinding()] Param ( [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${IsMigrateMeetingRecords}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${IsDirectPermission}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${IsSharedLink}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${IsConfigureFilterPolicy}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${EnableShared}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${FilterPolicyId}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${ScopeCondition}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${ContainerConflictResolution}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${ContentConflictResolution}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${EnableSyncDeletion}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${ManageLabelCondition}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${IsRemoveSourceIRM}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${DefaultReplacementUser}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${LabelMappingProfileId}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${ContentTypeMappingProfileId}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${UserMappingProfileId}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject[]] ${UserMappingRules}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${Name}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${Description}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${MigrationModuleType}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${Notification}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${IsDefault}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String[]] ${CustomizeFeatures} ) Process { 'Creating PSCustomObject: Fly.Client => FlyOneDrivePolicyCreationModel' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $PSO = [PSCustomObject]@{ "isMigrateMeetingRecords" = ${IsMigrateMeetingRecords} "isDirectPermission" = ${IsDirectPermission} "isSharedLink" = ${IsSharedLink} "isConfigureFilterPolicy" = ${IsConfigureFilterPolicy} "enableShared" = ${EnableShared} "filterPolicyId" = ${FilterPolicyId} "scopeCondition" = ${ScopeCondition} "containerConflictResolution" = ${ContainerConflictResolution} "contentConflictResolution" = ${ContentConflictResolution} "enableSyncDeletion" = ${EnableSyncDeletion} "manageLabelCondition" = ${ManageLabelCondition} "isRemoveSourceIRM" = ${IsRemoveSourceIRM} "defaultReplacementUser" = ${DefaultReplacementUser} "labelMappingProfileId" = ${LabelMappingProfileId} "contentTypeMappingProfileId" = ${ContentTypeMappingProfileId} "userMappingProfileId" = ${UserMappingProfileId} "userMappingRules" = ${UserMappingRules} "name" = ${Name} "description" = ${Description} "migrationModuleType" = ${MigrationModuleType} "notification" = ${Notification} "isDefault" = ${IsDefault} "customizeFeatures" = ${CustomizeFeatures} } return $PSO } } <# .SYNOPSIS Convert from JSON to OneDrivePolicyCreationModel<PSCustomObject> .DESCRIPTION Convert from JSON to OneDrivePolicyCreationModel<PSCustomObject> .PARAMETER Json Json object .OUTPUTS OneDrivePolicyCreationModel<PSCustomObject> #> function ConvertFrom-FlyJsonToOneDrivePolicyCreationModel { Param( [AllowEmptyString()] [string]$Json ) Process { 'Converting JSON to PSCustomObject: Fly.Client => FlyOneDrivePolicyCreationModel' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $JsonParameters = ConvertFrom-Json -InputObject $Json # check if Json contains properties not defined in FlyOneDrivePolicyCreationModel $AllProperties = ("isMigrateMeetingRecords", "isDirectPermission", "isSharedLink", "isConfigureFilterPolicy", "enableShared", "filterPolicyId", "scopeCondition", "containerConflictResolution", "contentConflictResolution", "enableSyncDeletion", "manageLabelCondition", "isRemoveSourceIRM", "defaultReplacementUser", "labelMappingProfileId", "contentTypeMappingProfileId", "userMappingProfileId", "userMappingRules", "name", "description", "migrationModuleType", "notification", "isDefault", "customizeFeatures") foreach ($name in $JsonParameters.PsObject.Properties.Name) { if (!($AllProperties.Contains($name))) { throw "Error! JSON key '$name' not found in the properties: $($AllProperties)" } } if (!([bool]($JsonParameters.PSobject.Properties.name -match "isMigrateMeetingRecords"))) { #optional property not found $IsMigrateMeetingRecords = $null } else { $IsMigrateMeetingRecords = $JsonParameters.PSobject.Properties["isMigrateMeetingRecords"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "isDirectPermission"))) { #optional property not found $IsDirectPermission = $null } else { $IsDirectPermission = $JsonParameters.PSobject.Properties["isDirectPermission"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "isSharedLink"))) { #optional property not found $IsSharedLink = $null } else { $IsSharedLink = $JsonParameters.PSobject.Properties["isSharedLink"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "isConfigureFilterPolicy"))) { #optional property not found $IsConfigureFilterPolicy = $null } else { $IsConfigureFilterPolicy = $JsonParameters.PSobject.Properties["isConfigureFilterPolicy"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "enableShared"))) { #optional property not found $EnableShared = $null } else { $EnableShared = $JsonParameters.PSobject.Properties["enableShared"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "filterPolicyId"))) { #optional property not found $FilterPolicyId = $null } else { $FilterPolicyId = $JsonParameters.PSobject.Properties["filterPolicyId"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "scopeCondition"))) { #optional property not found $ScopeCondition = $null } else { $ScopeCondition = $JsonParameters.PSobject.Properties["scopeCondition"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "containerConflictResolution"))) { #optional property not found $ContainerConflictResolution = $null } else { $ContainerConflictResolution = $JsonParameters.PSobject.Properties["containerConflictResolution"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "contentConflictResolution"))) { #optional property not found $ContentConflictResolution = $null } else { $ContentConflictResolution = $JsonParameters.PSobject.Properties["contentConflictResolution"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "enableSyncDeletion"))) { #optional property not found $EnableSyncDeletion = $null } else { $EnableSyncDeletion = $JsonParameters.PSobject.Properties["enableSyncDeletion"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "manageLabelCondition"))) { #optional property not found $ManageLabelCondition = $null } else { $ManageLabelCondition = $JsonParameters.PSobject.Properties["manageLabelCondition"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "isRemoveSourceIRM"))) { #optional property not found $IsRemoveSourceIRM = $null } else { $IsRemoveSourceIRM = $JsonParameters.PSobject.Properties["isRemoveSourceIRM"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "defaultReplacementUser"))) { #optional property not found $DefaultReplacementUser = $null } else { $DefaultReplacementUser = $JsonParameters.PSobject.Properties["defaultReplacementUser"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "labelMappingProfileId"))) { #optional property not found $LabelMappingProfileId = $null } else { $LabelMappingProfileId = $JsonParameters.PSobject.Properties["labelMappingProfileId"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "contentTypeMappingProfileId"))) { #optional property not found $ContentTypeMappingProfileId = $null } else { $ContentTypeMappingProfileId = $JsonParameters.PSobject.Properties["contentTypeMappingProfileId"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "userMappingProfileId"))) { #optional property not found $UserMappingProfileId = $null } else { $UserMappingProfileId = $JsonParameters.PSobject.Properties["userMappingProfileId"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "userMappingRules"))) { #optional property not found $UserMappingRules = $null } else { $UserMappingRules = $JsonParameters.PSobject.Properties["userMappingRules"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "name"))) { #optional property not found $Name = $null } else { $Name = $JsonParameters.PSobject.Properties["name"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "description"))) { #optional property not found $Description = $null } else { $Description = $JsonParameters.PSobject.Properties["description"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "migrationModuleType"))) { #optional property not found $MigrationModuleType = $null } else { $MigrationModuleType = $JsonParameters.PSobject.Properties["migrationModuleType"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "notification"))) { #optional property not found $Notification = $null } else { $Notification = $JsonParameters.PSobject.Properties["notification"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "isDefault"))) { #optional property not found $IsDefault = $null } else { $IsDefault = $JsonParameters.PSobject.Properties["isDefault"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "customizeFeatures"))) { #optional property not found $CustomizeFeatures = $null } else { $CustomizeFeatures = $JsonParameters.PSobject.Properties["customizeFeatures"].value } $PSO = [PSCustomObject]@{ "isMigrateMeetingRecords" = ${IsMigrateMeetingRecords} "isDirectPermission" = ${IsDirectPermission} "isSharedLink" = ${IsSharedLink} "isConfigureFilterPolicy" = ${IsConfigureFilterPolicy} "enableShared" = ${EnableShared} "filterPolicyId" = ${FilterPolicyId} "scopeCondition" = ${ScopeCondition} "containerConflictResolution" = ${ContainerConflictResolution} "contentConflictResolution" = ${ContentConflictResolution} "enableSyncDeletion" = ${EnableSyncDeletion} "manageLabelCondition" = ${ManageLabelCondition} "isRemoveSourceIRM" = ${IsRemoveSourceIRM} "defaultReplacementUser" = ${DefaultReplacementUser} "labelMappingProfileId" = ${LabelMappingProfileId} "contentTypeMappingProfileId" = ${ContentTypeMappingProfileId} "userMappingProfileId" = ${UserMappingProfileId} "userMappingRules" = ${UserMappingRules} "name" = ${Name} "description" = ${Description} "migrationModuleType" = ${MigrationModuleType} "notification" = ${Notification} "isDefault" = ${IsDefault} "customizeFeatures" = ${CustomizeFeatures} } return $PSO } } |