コード例 #1
0
        internal OrientConnection(
            IOrientDBRecordSerializer <TDataType> serializer,
            IOrientDBConnectionProtocol <TDataType> connectionProtocol,
            ILogger logger,
            string database,
            DatabaseType databaseType,
            int poolSize = 10)
        {
            if (serializer == null)
            {
                throw new ArgumentNullException($"{nameof(serializer)}");
            }
            if (connectionProtocol == null)
            {
                throw new ArgumentNullException($"{nameof(connectionProtocol)}");
            }
            if (string.IsNullOrWhiteSpace(database))
            {
                throw new ArgumentException($"{nameof(database)}");
            }
            _logger = logger ?? throw new ArgumentNullException($"{nameof(logger)}");

            _serverConnection   = connectionProtocol.CreateServerConnection(serializer, logger);
            _databaseConnection = _serverConnection.DatabaseConnect(database, databaseType, poolSize);
        }
コード例 #2
0
 internal OrientConnectionFactory(
     IOrientDBConnectionProtocol<TDataType> connectionProtocol,
     IOrientDBRecordSerializer<TDataType> serializer, 
     ILogger logger)
 {
     _connectionProtocol = connectionProtocol ?? throw new ArgumentNullException($"{nameof(connectionProtocol)} cannot be null.");
     _serializer = serializer ?? throw new ArgumentNullException($"{nameof(serializer)} cannot be null");
     _logger = logger ?? throw new ArgumentNullException($"{nameof(logger)} cannot be null");
 }        
コード例 #3
0
        public OrientDBConnectionProtocolConfiguration <TDataType> Connect(IOrientDBConnectionProtocol <TDataType> protocol)
        {
            if (protocol == null)
            {
                throw new ArgumentNullException($"{nameof(protocol)} cannot be null.");
            }

            _configAction(protocol);

            return(new OrientDBConnectionProtocolConfiguration <TDataType>(_configuration, _serializerAction, _configAction));
        }