Beispiel #1
0
        public DataManager(string connection)
        {
            _elasticConn = _elasticConn ?? ElasticConnection.Instance(new Uri(connection), "music");

            //_elasticConn = _elasticConn ?? ElasticConnection.Instance(
            //    resource: settings.ElasticConnectionUri,
            //    index: !string.IsNullOrWhiteSpace(NewIndexName) ? NewIndexName : settings.ElasticIndexAlias);

            //NewIndexName = !string.IsNullOrWhiteSpace(settings.ElasticIndexAlias) ? settings.ElasticIndexAlias : "";
        }
        /// <summary>
        /// Using a singleton pattern over an object lock to ensure no other instance of <c>ElasticConnection</c>
        /// can be created.
        /// </summary>
        /// <param name="resource"></param>
        /// <returns>The current instance of <c>ElasticConnection</c>.</returns>
        public static ElasticConnection Instance(Uri resource, string index)
        {
            if (_instance == null)
            {
                lock (objectLock)
                {
                    if (_instance == null)
                    {
                        _instance = (string.IsNullOrEmpty(index)) ? new ElasticConnection(resource) : new ElasticConnection(resource, index);
                    }
                }
            }

            return(_instance);
        }