Public/Start-PegasusSyncSession.ps1

<#
.SYNOPSIS
Removes a position from the API.

.EXAMPLE
Start-PegasusSyncSession

#>

function Start-PegasusSyncSession {
    [CmdletBinding()]

    Param
    (
        [Parameter(Mandatory = $true)]
        [ValidatePattern("^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$")]
        [String] $ConnectorId,

        [Parameter(Mandatory = $true)]
        [ValidateSet("ssn", "anchor")]
        [String] $PersonJoinAttribute
    )
    
    Process {
        Write-Verbose "Starting sync session for connector $ConnectorId with person join attribute $PersonJoinAttribute"
        $Script:SyncSessionPersonJoinAttribute = $PersonJoinAttribute
        $Script:SyncSessionConnectorId = $ConnectorId
        $Script:SyncSessionObjects = @{
            "person"      = @{}
            "position"    = @{}
            "orgunit"     = @{}
            "genericdata" = @{}
        }
    }
}