/// <summary> /// Initializes the broker. /// </summary> /// <exception cref="Exception">Failed creating Documentum client</exception> private void InitializeBroker() { //File.AppendAllText("DqlConnect.log", sessionId + " InitalizeBroker\r\n\r\n"); _clientx = new DfClientX(); _client = _clientx.getLocalClient(); if (_client == null) { throw new Exception("Failed creating Documentum client"); } IDfTypedObject config = _client.getClientConfig(); builder = new DqlConnectionStringBuilder(this.ConnectionString); config.setString("dfc.docbroker.host", DefaultBrokerHost ?? SetDefaultBrokerHost()); //File.AppendAllText("DqlConnect.log", sessionId + " Broker set to: " + DefaultBrokerHost + Environment.NewLine); builder.SetExtendedProperties(config); //builder.GetExtendedProperties().ForEach(item => //{ config.setString(item.Key, item.Value); }); IDfDocbaseMap map = _client.getDocbaseMap(); Catalogs = new List <string>(); int count = map.getDocbaseCount(); for (int i = 0; i < count; i++) { Catalogs.Add(map.getDocbaseName(i)); } map = null; config = null; }
/// <summary> /// Sets the extended properties. /// </summary> /// <param name="config">The configuration.</param> public void SetExtendedProperties(IDfTypedObject config) { foreach (var item in GetExtendedProperties()) { var items = item.Key.Split(new string[] { "[", "]" }, StringSplitOptions.RemoveEmptyEntries); if (items.Count() > 1) { config.setRepeatingString(items.First().Trim(), int.Parse(items.Last().Trim()), item.Value.Trim()); } else { config.setString(item.Key.Trim(), item.Value.Trim()); } } }