internal ArangoDBConnection(IDatabaseRecordParser <TDataType> parser, IDatabaseConnectionProtocol <TDataType> protocol, ILogger logger, string database)
        {
            if (parser == null)
            {
                throw new ArgumentNullException($"{nameof(parser)}");
            }
            if (protocol == null)
            {
                throw new ArgumentNullException($"{nameof(protocol)}");
            }
            if (string.IsNullOrWhiteSpace(database))
            {
                throw new ArgumentException($"{nameof(database)}");
            }
            _logger = logger ?? throw new ArgumentNullException($"{nameof(logger)}");

            _serverConnection   = protocol.CreateServerConnection(parser, logger);
            _databaseConnection = _serverConnection.Connect(database);
        }
Esempio n. 2
0
 public IDatabaseServerConnection CreateConnection()
 {
     return(_connectionProtocol.CreateServerConnection(_parser, _logger));
 }