Ejemplo n.º 1
0
        private void Open(bool isLocal, string Host, int Port)
        {
            CheckConnection(false);

            if (!isLocal)
            {
                session = CLI.cli_open(String.Format("{0}:{1}", Host, Port), maxConnectRetries, reconnectTimeout);
            }
            else
            {
                session = (int)CLI.ErrorCode.cli_bad_address;
            }

            if (session != (int)CLI.ErrorCode.cli_bad_address)
            {
                throw new CliError(session, "cli_open failed");
            }
            else
            {
                if (enableReplication)
                {
                    session =
                        CLI.CliCheck(CLI.cli_create_replication_node(
                                         nodeID,
                                         nodeNames.Length,
                                         nodeNames,
                                         dbName,
                                         dbPath,
                                         (int)openAttributes,
                                         initDbSize,
                                         extQuantum,
                                         initIdxSize,
                                         fileSizeLimit), "cli_create_replication_node failed");
                }
                else
                {
                    session =
                        CLI.CliCheck(CLI.cli_create(dbName,
                                                    dbPath,
                                                    transCommitDelay,
                                                    (int)openAttributes,
                                                    initDbSize,
                                                    extQuantum,
                                                    initIdxSize,
                                                    fileSizeLimit), "cli_create failed");
                }
            }

            sessionThreadID = System.Threading.Thread.CurrentThread.GetHashCode();
            IntPtr dummy = IntPtr.Zero;

            errorHandler = new CLI.CliErrorHandler(SessionErrorHandler);
            CLI.cli_set_error_handler(session, errorHandler, dummy);
        }
Ejemplo n.º 2
0
        private void Open(bool isLocal, string Host, int Port)
        {
            CheckConnection(false);

              if (!isLocal)
            session = CLI.cli_open(String.Format("{0}:{1}", Host, Port), maxConnectRetries, reconnectTimeout);
              else
            session = (int)CLI.ErrorCode.cli_bad_address;

              if (session != (int)CLI.ErrorCode.cli_bad_address)
            throw new CliError(session, "cli_open failed");
              else {
            if (enableReplication)
              session =
            CLI.CliCheck(CLI.cli_create_replication_node(
            nodeID,
            nodeNames.Length,
            nodeNames,
            dbName,
            dbPath,
            (int)openAttributes,
            initDbSize,
            extQuantum,
            initIdxSize,
            fileSizeLimit), "cli_create_replication_node failed");
            else
              session =
            CLI.CliCheck(CLI.cli_create(dbName,
            dbPath,
            transCommitDelay,
            (int)openAttributes,
            initDbSize,
            extQuantum,
            initIdxSize,
            fileSizeLimit), "cli_create failed");
              }

              sessionThreadID = System.Threading.Thread.CurrentThread.GetHashCode();
              IntPtr dummy    = IntPtr.Zero;
              errorHandler = new CLI.CliErrorHandler(SessionErrorHandler);
              CLI.cli_set_error_handler(session, errorHandler, dummy);
        }