private function AppendLayer($layer, $extent, $drawOrder, $format, $sessionId, $writer)
 {
     $baseUrl = $this->app->config("SelfUrl");
     $layerKml = "<NetworkLink>";
     $layerKml .= "<visibility>";
     $layerKml .= $layer->GetVisible() ? "1" : "0";
     $layerKml .= "</visibility>";
     $layerKml .= "<name><![CDATA[";
     $layerKml .= $layer->GetLegendLabel();
     $layerKml .= "]]></name>";
     $layerKml .= "<Link>";
     $layerKml .= "<href>";
     //TODO: If we can reverse-route we should.
     $ldfId = $layer->GetLayerDefinition();
     $url = MgUtils::TranscodeResourceUrl($baseUrl, $ldfId) . "/" . strtolower($format) . "?draworder=" . $drawOrder . "&amp;session=" . $sessionId;
     $layerKml .= $url;
     $layerKml .= "</href>";
     $layerKml .= "<viewRefreshMode>onStop</viewRefreshMode>";
     $layerKml .= "<viewRefreshTime>1</viewRefreshTime>";
     $layerKml .= "<viewFormat>bbox=[bboxWest],[bboxSouth],[bboxEast],[bboxNorth]&amp;width=[horizPixels]&amp;height=[vertPixels]</viewFormat>";
     $layerKml .= "</Link>";
     $layerKml .= "</NetworkLink>";
     $writer->WriteChunk($layerKml);
 }