/// <summary> /// Publishes a Map Service /// </summary> /// <param name="minInstances"></param> /// <param name="maxInstances"></param> /// <param name="waitTimeout"></param> /// <param name="usageTimeout"></param> /// <param name="idleTimeout"></param> /// <param name="sAgsConnFile"></param> /// <param name="sPythonScriptFile"></param> /// <returns>Published URL or Error as a string</returns> public string Publish(int minInstances, int maxInstances, int waitTimeout, int usageTimeout, int idleTimeout, string sAgsConnFile, string sPythonScriptFile) { string sURLs = string.Empty; string sMapServiceName = string.Empty; string sMxdFile = string.Empty; string sMxdTemplateName = string.Empty; MxdManager pManager = null; try { if (String.IsNullOrEmpty(_sMXDTemplate)) { return("Error: No MXD passed."); } pManager = new MxdManager(_sMXDTemplate); if (pManager.IsInitialized) { // Set sMapServiceName sMapServiceName = _sMapServiceName; // Set sMxdTemplateName _sMXDTemplate = _sMXDTemplate.Replace("C:\\\\", "C:\\"); sMxdTemplateName = _sMXDTemplate.Substring(_sMXDTemplate.LastIndexOf("\\") + 1); sMxdTemplateName = sMxdTemplateName.Remove(sMxdTemplateName.IndexOf(".mxd")); // Set sMxdFile sMxdFile = Path.Combine(_sOutputDirectory, sMapServiceName + "_" + sMxdTemplateName + ".mxd"); if (!(pManager.CreateMxd(_sMXDTemplate, _sOutputDirectory, _ArcGISServer, sMxdFile, _sDBConn, _sDataset, _bSDE))) { sURLs = sURLs + "MxdManager.CreateMxd failed for " + _sMXDTemplate + ". Please see logfile for details.,"; } // If sAgsConnFile is empty then publish using ArcGIS Server 10 if (string.IsNullOrEmpty(sAgsConnFile)) { sURLs = sURLs + pManager.PublishMap(sMapServiceName + "_" + sMxdTemplateName, _ArcGISServer, sMxdFile, _bSDE, minInstances, maxInstances, waitTimeout, usageTimeout, idleTimeout); } else // publish using ArcGIS Server 10.1 { #if _WIN64 sURLs = sURLs + pManager.PublishMap10_1(sMapServiceName + "_" + sMxdTemplateName, _ArcGISServer, sMxdFile, _sOutputDirectory, sAgsConnFile, sPythonScriptFile); #endif } } return(sURLs.TrimEnd(',')); } catch (Exception ex) { throw new ApplicationException("Error in PublishMXD.Publish: " + ex.Message + " Stack trace: " + ex.StackTrace); } finally { pManager = null; } }
/// <summary> /// Publishes a Map Service /// </summary> /// <param name="minInstances"></param> /// <param name="maxInstances"></param> /// <param name="waitTimeout"></param> /// <param name="usageTimeout"></param> /// <param name="idleTimeout"></param> /// <param name="sAgsConnFile"></param> /// <param name="sPythonScriptDir"></param> /// <returns>Published URL or Error as a string</returns> public string Publish(string sAgsConnFile, string sPythonScriptDir) { string sURLs = string.Empty; string sMapServiceName = string.Empty; string sMxdFile = string.Empty; string sMxdTemplateName = string.Empty; MxdManager pManager = null; try { if (String.IsNullOrEmpty(_sMXDTemplate)) { return("Error: No MXD passed."); } pManager = new MxdManager(_sMXDTemplate); // Set sMapServiceName sMapServiceName = _sMapServiceName; // Set sMxdTemplateName _sMXDTemplate = _sMXDTemplate.Replace("C:\\\\", "C:\\"); sMxdTemplateName = _sMXDTemplate.Substring(_sMXDTemplate.LastIndexOf("\\") + 1); sMxdTemplateName = sMxdTemplateName.Remove(sMxdTemplateName.IndexOf(".mxd")); // Set sMxdFile sMxdFile = Path.Combine(_sOutputDirectory, sMapServiceName + "_" + sMxdTemplateName + ".mxd"); if (!(pManager.CreateMxd(_sMXDTemplate, _sOutputDirectory, _ArcGISServer, sMxdFile, _sDBConn, _sDataset, sPythonScriptDir, _bSDE))) { sURLs = sURLs + "MxdManager.CreateMxd failed for " + _sMXDTemplate + ". Please see logfile for details.,"; } // publish using ArcGIS Server 10.1 sURLs = sURLs + pManager.PublishMap10_1(sMapServiceName + "_" + sMxdTemplateName, _ArcGISServer, sMxdFile, _sOutputDirectory, sAgsConnFile, Path.Combine(sPythonScriptDir, PUBLISHMXD_PY)); return(sURLs.TrimEnd(',')); } catch (Exception ex) { throw new ApplicationException("Error in PublishMXD.Publish: " + ex.Message + " Stack trace: " + ex.StackTrace); } finally { pManager = null; } }
/// <summary> /// Publishes a Map Service /// </summary> /// <param name="minInstances"></param> /// <param name="maxInstances"></param> /// <param name="waitTimeout"></param> /// <param name="usageTimeout"></param> /// <param name="idleTimeout"></param> /// <param name="sAgsConnFile"></param> /// <param name="sPythonScriptDir"></param> /// <returns>Published URL or Error as a string</returns> public string Publish(string sAgsConnFile, string sPythonScriptDir) { string sURLs = string.Empty; string sMapServiceName = string.Empty; string sMxdFile = string.Empty; string sMxdTemplateName = string.Empty; MxdManager pManager = null; try { if (String.IsNullOrEmpty(_sMXDTemplate)) return "Error: No MXD passed."; pManager = new MxdManager(_sMXDTemplate); // Set sMapServiceName sMapServiceName = _sMapServiceName; // Set sMxdTemplateName _sMXDTemplate = _sMXDTemplate.Replace("C:\\\\", "C:\\"); sMxdTemplateName = _sMXDTemplate.Substring(_sMXDTemplate.LastIndexOf("\\") + 1); sMxdTemplateName = sMxdTemplateName.Remove(sMxdTemplateName.IndexOf(".mxd")); // Set sMxdFile sMxdFile = Path.Combine(_sOutputDirectory, sMapServiceName + "_" + sMxdTemplateName + ".mxd"); if (!(pManager.CreateMxd(_sMXDTemplate, _sOutputDirectory, _ArcGISServer, sMxdFile, _sDBConn, _sDataset, sPythonScriptDir, _bSDE))) { sURLs = sURLs + "MxdManager.CreateMxd failed for " + _sMXDTemplate + ". Please see logfile for details.,"; } // publish using ArcGIS Server 10.1 sURLs = sURLs + pManager.PublishMap10_1(sMapServiceName + "_" + sMxdTemplateName, _ArcGISServer, sMxdFile, _sOutputDirectory, sAgsConnFile, Path.Combine(sPythonScriptDir, PUBLISHMXD_PY)); return sURLs.TrimEnd(','); } catch (Exception ex) { throw new ApplicationException("Error in PublishMXD.Publish: " + ex.Message + " Stack trace: " + ex.StackTrace); } finally { pManager = null; } }
/// <summary> /// Publishes a Map Service /// </summary> /// <param name="minInstances"></param> /// <param name="maxInstances"></param> /// <param name="waitTimeout"></param> /// <param name="usageTimeout"></param> /// <param name="idleTimeout"></param> /// <param name="sAgsConnFile"></param> /// <param name="sPythonScriptFile"></param> /// <returns>Published URL or Error as a string</returns> public string Publish(int minInstances, int maxInstances, int waitTimeout, int usageTimeout, int idleTimeout, string sAgsConnFile, string sPythonScriptFile) { string sURLs = string.Empty; string sMapServiceName = string.Empty; string sMxdFile = string.Empty; string sMxdTemplateName = string.Empty; MxdManager pManager = null; try { if (String.IsNullOrEmpty(_sMXDTemplate)) return "Error: No MXD passed."; pManager = new MxdManager(_sMXDTemplate); if (pManager.IsInitialized) { // Set sMapServiceName sMapServiceName = _sMapServiceName; // Set sMxdTemplateName _sMXDTemplate = _sMXDTemplate.Replace("C:\\\\", "C:\\"); sMxdTemplateName = _sMXDTemplate.Substring(_sMXDTemplate.LastIndexOf("\\") + 1); sMxdTemplateName = sMxdTemplateName.Remove(sMxdTemplateName.IndexOf(".mxd")); // Set sMxdFile sMxdFile = Path.Combine(_sOutputDirectory, sMapServiceName + "_" + sMxdTemplateName + ".mxd"); if (!(pManager.CreateMxd(_sMXDTemplate, _sOutputDirectory, _ArcGISServer, sMxdFile, _sDBConn, _sDataset, _bSDE))) { sURLs = sURLs + "MxdManager.CreateMxd failed for " + _sMXDTemplate + ". Please see logfile for details.,"; } // If sAgsConnFile is empty then publish using ArcGIS Server 10 if (string.IsNullOrEmpty(sAgsConnFile)) { sURLs = sURLs + pManager.PublishMap(sMapServiceName + "_" + sMxdTemplateName, _ArcGISServer, sMxdFile, _bSDE, minInstances, maxInstances, waitTimeout, usageTimeout, idleTimeout); } else // publish using ArcGIS Server 10.1 { #if _WIN64 sURLs = sURLs + pManager.PublishMap10_1(sMapServiceName + "_" + sMxdTemplateName, _ArcGISServer, sMxdFile, _sOutputDirectory, sAgsConnFile, sPythonScriptFile); #endif } } return sURLs.TrimEnd(','); } catch (Exception ex) { throw new ApplicationException("Error in PublishMXD.Publish: " + ex.Message + " Stack trace: " + ex.StackTrace); } finally { pManager = null; } }