I mean that it seems odd that the XBlock has to set the scheme and hostname. I think that figuring those things out should be the responsibility of the runtime.