Well I solved this being a little tricky. I was hoping for a more elegant solution but if anyone else needs to do this here is how I accomplished it.
private void function createOpenGraphMetaURL() {
variables.meta.og.url = "http://www." & get( 'domainName' );
var urlForArgs = {};
// Base params used in routing
if ( Len( params.route ) ) {
urlForArgs.route = params.route;
}
if ( structStringExists( params, "action", true ) ) {
urlForArgs.action = params.action;
}
if ( structStringExists( params, "key", true ) ) {
urlForArgs.key = params.key;
}
// Any custom params used in routing
if ( structStringExists( params, "customParam1", true ) ) {
urlForArgs.customParam1 = params.customParam1;
}
if ( structStringExists( params, "customParam2", true ) ) {
urlForArgs.customParam2 = params.customParam2;
}
variables.meta.og.url &= URLFor( argumentCollection=urlForArgs );
}
Then in my layout I just output the variables.meta.og.url:
<meta property="og:url" content="#variables.meta.og.url#" />
Well I hope that helps someone searching for something like this in the future. And if there is a more elegant way to get this done please let me know.