Private/Update-ComponentAgainstMetadata.ps1

Function Update-ComponentAgainstMetadata {
    Param
    (
        [SolutionComponent[]]$Component,
        [hashtable]$Metadata,
        [Microsoft.Xrm.Tooling.Connector.CrmServiceClient]$SourceConn,
        [Microsoft.Xrm.Tooling.Connector.CrmServiceClient]$TargetConn
    )

    $updatedComponent = $Component
    $updatedComponent = Set-ParentObjectId -Component $updatedComponent
    $updatedComponent = Set-SchemaName -Component $updatedComponent -Metadata $Metadata
    $updatedComponent = Set-Guid -Component $updatedComponent -Metadata $Metadata -SourceConn $SourceConn -TargetConn $TargetConn

    Write-Output $updatedComponent
}