ignite-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From voze...@apache.org
Subject [22/28] ignite git commit: IGNITE-2442: ODBC projects moved to main cpp solution.
Date Wed, 27 Jan 2016 10:39:55 GMT
http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/common_types.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/common_types.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/common_types.h
deleted file mode 100644
index 8e1dbf2..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/common_types.h
+++ /dev/null
@@ -1,225 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_COMMON_TYPES
-#define _IGNITE_ODBC_DRIVER_COMMON_TYPES
-
-#include <stdint.h>
-
-namespace ignite
-{
-    namespace odbc
-    {
-
-#ifdef _WIN64
-        typedef long long SqlLen;
-#else
-        typedef long SqlLen;
-#endif
-
-        /**
-         * SQL result.
-         */
-        enum SqlResult
-        {
-            /** Success. */
-            SQL_RESULT_SUCCESS,
-
-            /** Success with info. */
-            SQL_RESULT_SUCCESS_WITH_INFO,
-
-            /** Error. */
-            SQL_RESULT_ERROR,
-
-            /** No more data. */
-            SQL_RESULT_NO_DATA
-        };
-
-        /**
-         * Provides detailed information about the cause of a warning or error.
-         */
-        enum SqlState
-        {
-            /** Undefined state. Internal, should never be exposed to user. */
-            SQL_STATE_UNKNOWN,
-
-            /** Output data has been truncated. */
-            SQL_STATE_01004_DATA_TRUNCATED,
-
-            /** Error in row. */
-            SQL_STATE_01S01_ERROR_IN_ROW,
-
-            /**
-             * The driver did not support the specified value and
-             * substituted a similar value.
-             */
-            SQL_STATE_01S02_OPTION_VALUE_CHANGED,
-
-            /** Invalid cursor state. */
-            SQL_STATE_24000_INVALID_CURSOR_STATE,
-
-            /**
-             * The driver was unable to establish a connection with the data
-             * source.
-             */
-            SQL_STATE_08001_CANNOT_CONNECT,
-
-            /**
-             * The specified ConnectionHandle had already been used
-             * to establish a connection with a data source, and the connection
-             * was still open.
-             */
-            SQL_STATE_08002_ALREADY_CONNECTED,
-
-            /** The connection specified was not open. */
-            SQL_STATE_08003_NOT_CONNECTED,
-
-            /**
-             * An error occurred for which there was no specific SQLSTATE
-             * and for which no implementation-specific SQLSTATE was defined.
-             */
-            SQL_STATE_HY000_GENERAL_ERROR,
-
-            /**
-             * The driver was unable to allocate memory for the specified
-             * handle.
-             */
-            SQL_STATE_HY001_MEMORY_ALLOCATION,
-
-            /** Function sequence error. */
-            SQL_STATE_HY010_SEQUENCE_ERROR,
-
-            /** Column type out of range. */
-            SQL_STATE_HY097_COLUMN_TYPE_OUT_OF_RANGE,
-
-            /**
-             * The driver does not support the feature of ODBC behavior that
-             * the application requested.
-             */
-            SQL_STATE_HYC00_OPTIONAL_FEATURE_NOT_IMPLEMENTED,
-
-            /**
-             * The connection timeout period expired before the data source
-             * responded to the request.
-             */
-            SQL_STATE_HYT01_CONNECTIOIN_TIMEOUT
-        };
-
-        /**
-         * Diagnostic field type.
-         */
-        enum DiagnosticField
-        {
-            /** Field type is unknown to the driver. */
-            IGNITE_SQL_DIAG_UNKNOWN,
-
-            /** Header record field: Count of rows in the cursor. */
-            IGNITE_SQL_DIAG_HEADER_CURSOR_ROW_COUNT,
-
-            /**
-            * Header record field: String that describes the SQL statement
-            * that the underlying function executed.
-            */
-            IGNITE_SQL_DIAG_HEADER_DYNAMIC_FUNCTION,
-
-            /**
-            * Header record field: Numeric code that describes the SQL
-            * statement that was executed by the underlying function.
-            */
-            IGNITE_SQL_DIAG_HEADER_DYNAMIC_FUNCTION_CODE,
-
-            /** Header record field: Number of status records. */
-            IGNITE_SQL_DIAG_HEADER_NUMBER,
-
-            /** Header record field: Last operation return code. */
-            IGNITE_SQL_DIAG_HEADER_RETURNCODE,
-
-            /** Header record field: Row count. */
-            IGNITE_SQL_DIAG_HEADER_ROW_COUNT,
-
-            /** Status record field: Class origin. */
-            IGNITE_SQL_DIAG_STATUS_CLASS_ORIGIN,
-
-            /** Status record field: Column number. */
-            IGNITE_SQL_DIAG_STATUS_COLUMN_NUMBER,
-
-            /** Status record field: Connection name. */
-            IGNITE_SQL_DIAG_STATUS_CONNECTION_NAME,
-
-            /** Status record field: Message text. */
-            IGNITE_SQL_DIAG_STATUS_MESSAGE_TEXT,
-
-            /** Status record field: Native result code. */
-            IGNITE_SQL_DIAG_STATUS_NATIVE,
-
-            /** Status record field: Row number. */
-            IGNITE_SQL_DIAG_STATUS_ROW_NUMBER,
-
-            /** Status record field: Server name. */
-            IGNITE_SQL_DIAG_STATUS_SERVER_NAME,
-
-            /** Status record field: SQLSTATE. */
-            IGNITE_SQL_DIAG_STATUS_SQLSTATE,
-
-            /** Status record field: Subclass origin. */
-            IGNITE_SQL_DIAG_STATUS_SUBCLASS_ORIGIN
-        };
-
-        /**
-         * Environment attribute.
-         */
-        enum EnvironmentAttribute
-        {
-            /** ODBC attribute is unknown to the driver. */
-            IGNITE_SQL_ENV_ATTR_UNKNOWN,
-
-            /** ODBC version. */
-            IGNITE_SQL_ENV_ATTR_ODBC_VERSION,
-
-            /** Null-termination of strings. */
-            IGNITE_SQL_ENV_ATTR_OUTPUT_NTS
-        };
-
-        /**
-         * Convert internal Ignite type into ODBC SQL return code.
-         *
-         * @param result Internal result type.
-         * @return ODBC result type.
-         */
-        int SqlResultToReturnCode(SqlResult result);
-
-        /**
-         * Convert ODBC field type to internal DiagnosticField type value.
-         *
-         * @param field ODBC field type.
-         * @return Internal DiagnosticField type value.
-         */
-        DiagnosticField DiagnosticFieldToInternal(int16_t field);
-
-        /**
-         * Convert environment attribute to internal EnvironmentAttribute type value.
-         *
-         * @param attr Environment attribute.
-         * @return Internal EnvironmentAttribute type value.
-         */
-        EnvironmentAttribute EnvironmentAttributeToInternal(int32_t attr);
-
-
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/configuration.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/configuration.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/configuration.h
deleted file mode 100644
index f85a5de..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/configuration.h
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_CONFIGURATION
-#define _IGNITE_ODBC_DRIVER_CONFIGURATION
-
-#include <stdint.h>
-#include <string>
-#include <map>
-
-#include <ignite/common/common.h>
-
-namespace ignite
-{
-    namespace odbc
-    {
-        namespace config
-        {
-            /**
-             * ODBC configuration abstraction.
-             */
-            class Configuration
-            {
-            public:
-                /**
-                 * Default constructor.
-                 */
-                Configuration();
-
-                /**
-                 * Destructor.
-                 */
-                ~Configuration();
-
-                /**
-                 * Fill configuration data using connection string.
-                 *
-                 * @param str Pointer to string data.
-                 * @param len String length.
-                 */
-                void FillFromConnectString(const char* str, size_t len);
-                
-                /**
-                 * Fill configuration data using connection string.
-                 *
-                 * @param str Connect string.
-                 */
-                void FillFromConnectString(const std::string& str);
-
-                /**
-                 * Convert configure to connect string.
-                 *
-                 * @return Connect string.
-                 */
-                std::string ToConnectString() const;
-
-                /**
-                 * Fill configuration data using config attributes string.
-                 *
-                 * @param str Pointer to list of zero-terminated strings.
-                 *            Terminated by two zero bytes.
-                 */
-                void FillFromConfigAttributes(const char* attributes);
-
-                /**
-                 * Get server port.
-                 *
-                 * @return Server port.
-                 */
-                uint16_t GetPort() const
-                {
-                    return port;
-                }
-
-                /**
-                 * Get DSN.
-                 *
-                 * @return Data Source Name.
-                 */
-                const std::string& GetDsn() const
-                {
-                    return dsn;
-                }
-
-                /**
-                 * Get Driver.
-                 *
-                 * @return Driver name.
-                 */
-                const std::string& GetDriver() const
-                {
-                    return driver;
-                }
-
-                /**
-                 * Get server host.
-                 *
-                 * @return Server host.
-                 */
-                const std::string& GetHost() const
-                {
-                    return host;
-                }
-
-                /**
-                 * Get cache.
-                 *
-                 * @return Cache name.
-                 */
-                const std::string& GetCache() const
-                {
-                    return cache;
-                }
-
-            private:
-                IGNITE_NO_COPY_ASSIGNMENT(Configuration);
-
-                /** Map containing connect arguments. */
-                typedef std::map<std::string, std::string> ArgumentMap;
-
-                /**
-                 * Parse connect string into key-value storage.
-                 *
-                 * @param str String to parse.
-                 * @param len String length.
-                 * @param params Parsing result.
-                 */
-                void ParseAttributeList(const char* str, size_t len, char delimeter, ArgumentMap& args) const;
-
-                /** Data Source Name. */
-                std::string dsn;
-
-                /** Driver name. */
-                std::string driver;
-
-                /** Server hostname. */
-                std::string host;
-
-                /** Port of the server. */
-                uint16_t port;
-
-                /** Cache name. */
-                std::string cache;
-            };
-        }
-
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/connection_info.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/connection_info.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/connection_info.h
deleted file mode 100644
index 7f2738c..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/config/connection_info.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_CONNECTION_INFO
-#define _IGNITE_ODBC_DRIVER_CONNECTION_INFO
-
-#include <stdint.h>
-
-#include <map>
-
-#include <ignite/common/common.h>
-#include <ignite/odbc/common_types.h>
-
-namespace ignite
-{
-    namespace odbc
-    {
-        namespace config
-        {
-            /**
-             * Connection info.
-             */
-            class ConnectionInfo
-            {
-            public:
-                /** Info type. */
-                typedef unsigned short InfoType;
-
-#ifdef ODBC_DEBUG
-                /**
-                 * Convert type to string containing its name.
-                 * Debug function.
-                 * @param type Info type.
-                 * @return Null-terminated string containing types name.
-                 */
-                static const char* InfoTypeToString(InfoType type);
-#endif
-
-                /**
-                 * Constructor.
-                 */
-                ConnectionInfo();
-
-                /**
-                 * Destructor.
-                 */
-                ~ConnectionInfo();
-
-                /**
-                 * Get info of any type.
-                 * @param type Info type.
-                 * @param buf Result buffer pointer.
-                 * @param buflen Result buffer length.
-                 * @param reslen Result value length pointer.
-                 * @return True on success.
-                 */
-                SqlResult GetInfo(InfoType type, void* buf, short buflen, short* reslen) const;
-
-            private:
-                IGNITE_NO_COPY_ASSIGNMENT(ConnectionInfo);
-
-                /** Associative array of string parameters. */
-                typedef std::map<InfoType, std::string> StringInfoMap;
-
-                /** Associative array of unsigned integer parameters. */
-                typedef std::map<InfoType, unsigned int> UintInfoMap;
-
-                /** Associative array of unsigned short parameters. */
-                typedef std::map<InfoType, unsigned short> UshortInfoMap;
-
-                /** String parameters. */
-                StringInfoMap strParams;
-
-                /** Integer parameters. */
-                UintInfoMap intParams;
-
-                /** Short parameters. */
-                UshortInfoMap shortParams;
-            };
-        }
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/connection.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/connection.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/connection.h
deleted file mode 100644
index 56037f5..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/connection.h
+++ /dev/null
@@ -1,258 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_CONNECTION
-#define _IGNITE_ODBC_DRIVER_CONNECTION
-
-#include <stdint.h>
-
-#include <vector>
-
-#include "ignite/odbc/parser.h"
-#include "ignite/odbc/system/socket_client.h"
-#include "ignite/odbc/config/connection_info.h"
-#include "ignite/odbc/diagnostic/diagnosable_adapter.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        class Statement;
-
-        /**
-         * ODBC node connection.
-         */
-        class Connection : public diagnostic::DiagnosableAdapter
-        {
-            friend class Environment;
-        public:
-            /**
-             * Destructor.
-             */
-            ~Connection();
-
-            /**
-             * Get connection info.
-             *
-             * @return Connection info.
-             */
-            const config::ConnectionInfo& GetInfo() const;
-
-            /**
-             * Get info of any type.
-             *
-             * @param type Info type.
-             * @param buf Result buffer pointer.
-             * @param buflen Result buffer length.
-             * @param reslen Result value length pointer.
-             */
-            void GetInfo(config::ConnectionInfo::InfoType type, void* buf, short buflen, short* reslen);
-
-            /**
-             * Establish connection to ODBC server.
-             *
-             * @param server Server (DSN).
-             */
-            void Establish(const std::string& server);
-
-            /**
-             * Establish connection to ODBC server.
-             *
-             * @param host Host.
-             * @param port Port.
-             * @param cache Cache name to connect to.
-             */
-            void Establish(const std::string& host, uint16_t port, const std::string& cache);
-
-            /**
-             * Release established connection.
-             *
-             * @return Operation result.
-             */
-            void Release();
-
-            /**
-             * Create statement associated with the connection.
-             *
-             * @return Pointer to valid instance on success and NULL on failure.
-             */
-            Statement* CreateStatement();
-
-            /**
-             * Send data by established connection.
-             *
-             * @param data Data buffer.
-             * @param len Data length.
-             * @return True on success.
-             */
-            bool Send(const int8_t* data, size_t len);
-
-            /**
-             * Receive next message.
-             *
-             * @param msg Buffer for message.
-             * @return True on success.
-             */
-            bool Receive(std::vector<int8_t>& msg);
-
-            /**
-             * Get name of the assotiated cache.
-             *
-             * @return Cache name.
-             */
-            const std::string& GetCache() const;
-
-            /**
-             * Create diagnostic record associated with the Connection instance.
-             *
-             * @param sqlState SQL state.
-             * @param message Message.
-             * @param rowNum Associated row number.
-             * @param columnNum Associated column number.
-             * @return DiagnosticRecord associated with the instance.
-             */
-            diagnostic::DiagnosticRecord CreateStatusRecord(SqlState sqlState,
-                const std::string& message, int32_t rowNum = 0, int32_t columnNum = 0) const;
-
-            /**
-             * Synchronously send request message and receive response.
-             *
-             * @param req Request message.
-             * @param rsp Response message.
-             * @return True on success.
-             */
-            template<typename ReqT, typename RspT>
-            bool SyncMessage(const ReqT& req, RspT& rsp)
-            {
-                std::vector<int8_t> tempBuffer;
-
-                parser.Encode(req, tempBuffer);
-
-                bool requestSent = Send(tempBuffer.data(), tempBuffer.size());
-
-                if (!requestSent)
-                    return false;
-
-                bool responseReceived = Receive(tempBuffer);
-
-                if (!responseReceived)
-                    return false;
-
-                parser.Decode(rsp, tempBuffer);
-
-                return true;
-            }
-
-            /**
-             * Perform transaction commit.
-             */
-            void TransactionCommit();
-
-            /**
-             * Perform transaction rollback.
-             */
-            void TransactionRollback();
-
-        private:
-            IGNITE_NO_COPY_ASSIGNMENT(Connection);
-
-            /**
-             * Establish connection to ODBC server.
-             * Internal call.
-             *
-             * @param server Server (DNS).
-             * @return Operation result.
-             */
-            SqlResult InternalEstablish(const std::string& server);
-
-            /**
-             * Establish connection to ODBC server.
-             * Internal call.
-             *
-             * @param host Host.
-             * @param port Port.
-             * @param cache Cache name to connect to.
-             * @return Operation result.
-             */
-            SqlResult InternalEstablish(const std::string& host, uint16_t port, const std::string& cache);
-
-            /**
-             * Release established connection.
-             * Internal call.
-             *
-             * @return Operation result.
-             */
-            SqlResult InternalRelease();
-
-            /**
-             * Get info of any type.
-             * Internal call.
-             *
-             * @param type Info type.
-             * @param buf Result buffer pointer.
-             * @param buflen Result buffer length.
-             * @param reslen Result value length pointer.
-             * @return Operation result.
-             */
-            SqlResult InternalGetInfo(config::ConnectionInfo::InfoType type, void* buf, short buflen, short* reslen);
-
-            /**
-             * Create statement associated with the connection.
-             * Internal call.
-             *
-             * @param Pointer to valid instance on success and NULL on failure.
-             * @return Operation result.
-             */
-            SqlResult InternalCreateStatement(Statement*& statement);
-
-            /**
-             * Perform transaction commit on all the associated connections.
-             * Internal call.
-             *
-             * @return Operation result.
-             */
-            SqlResult InternalTransactionCommit();
-
-            /**
-             * Perform transaction rollback on all the associated connections.
-             * Internal call.
-             *
-             * @return Operation result.
-             */
-            SqlResult InternalTransactionRollback();
-
-            /**
-             * Constructor.
-             */
-            Connection();
-
-            /** Socket. */
-            tcp::SocketClient socket;
-
-            /** State flag. */
-            bool connected;
-
-            /** Cache name. */
-            std::string cache;
-
-            /** Message parser. */
-            Parser parser;
-        };
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/cursor.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/cursor.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/cursor.h
deleted file mode 100644
index 7d4c925..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/cursor.h
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_CURSOR
-#define _IGNITE_ODBC_DRIVER_CURSOR
-
-#include <stdint.h>
-
-#include <map>
-#include <memory>
-
-#include "ignite/odbc/result_page.h"
-#include "ignite/odbc/common_types.h"
-#include "ignite/odbc/row.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        /**
-         * Query result cursor.
-         */
-        class Cursor
-        {
-        public:
-            /**
-             * Constructor.
-             * @param queryId ID of the executed query.
-             */
-            Cursor(int64_t queryId);
-
-            /**
-             * Destructor.
-             */
-            ~Cursor();
-
-            /**
-             * Move cursor to the next result row.
-             * @return False if data update required or no more data.
-             */
-            bool Increment();
-
-            /**
-             * Check if the cursor needs data update.
-             * @return True if the cursor needs data update.
-             */
-            bool NeedDataUpdate() const;
-
-            /**
-             * Check if the cursor has next row row.
-             * @return True if the cursor has next row row.
-             */
-            bool HasNext() const;
-
-            /**
-             * Get query ID.
-             * @return Query ID.
-             */
-            int64_t GetQueryId() const
-            {
-                return queryId;
-            }
-
-            /**
-             * Update current cursor page data.
-             * @param newPage New result page.
-             */
-            void UpdateData(std::auto_ptr<ResultPage>& newPage);
-
-            /**
-             * Get current row.
-             * @return Current row.
-             */
-            Row* GetRow();
-
-        private:
-            IGNITE_NO_COPY_ASSIGNMENT(Cursor);
-
-            /** Cursor id. */
-            int64_t queryId;
-
-            /** Current page. */
-            std::auto_ptr<ResultPage> currentPage;
-
-            /** Row position in current page. */
-            int32_t currentPagePos;
-
-            /** Current row. */
-            std::auto_ptr<Row> currentRow;
-        };
-    }
-}
-
-#endif

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/decimal.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/decimal.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/decimal.h
deleted file mode 100644
index abf7f34..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/decimal.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_DECIMAL
-#define _IGNITE_DECIMAL
-
-#include <stdint.h>
-
-namespace ignite
-{
-    //TODO: move to binary or common library.
-    class Decimal
-    {
-        friend void swap(Decimal& first, Decimal& second);
-    public:
-        /**
-         * Default constructor.
-         */
-        Decimal();
-
-        /**
-         * Constructor.
-         *
-         * @param scale Scale.
-         * @param mag Magnitude. Value is copied.
-         * @param len Magnitude length in bytes.
-         */
-        Decimal(int32_t scale, const int8_t* mag, int32_t len);
-
-        /**
-         * Copy constructor.
-         *
-         * @param other Other instance.
-         */
-        Decimal(const Decimal& other);
-
-        /**
-         * Destructor.
-         */
-        ~Decimal();
-
-        /**
-         * Copy operator.
-         *
-         * @param other Other instance.
-         * @return This.
-         */
-        Decimal& operator=(const Decimal& other);
-
-        /**
-         * Convert to double.
-         */
-        operator double() const;
-
-        /**
-         * Get scale.
-         *
-         * @return Scale.
-         */
-        int32_t GetScale() const;
-
-        /**
-         * Get sign.
-         *
-         * @return Sign: -1 if negative and 1 if positive.
-         */
-        int32_t GetSign() const;
-
-        /**
-         * Check if the value is negative.
-         * 
-         * @return True if negative and false otherwise.
-         */
-        bool IsNegative() const;
-
-        /**
-         * Get magnitude length.
-         *
-         * @return Magnitude length.
-         */
-        int32_t GetLength() const;
-
-        /**
-         * Get magnitude pointer.
-         *
-         * @return Magnitude pointer.
-         */
-        const int8_t* GetMagnitude() const;
-
-    private:
-        /** Scale. */
-        int32_t scale;
-
-        /** Magnitude lenght. */
-        int32_t len;
-
-        /** Magnitude. */
-        int8_t* magnitude;
-    };
-
-    /**
-     * Swap function for the Decimal type.
-     *
-     * @param first First instance.
-     * @param second Second instance.
-     */
-    void swap(Decimal& first, Decimal& second);
-}
-
-
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable.h
deleted file mode 100644
index 2afd819..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_DIAGNOSABLE
-#define _IGNITE_ODBC_DRIVER_DIAGNOSABLE
-
-#include "ignite/odbc/diagnostic/diagnostic_record_storage.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        namespace diagnostic
-        {
-            /**
-             * Diagnosable interface.
-             */
-            class Diagnosable
-            {
-            public:
-                /**
-                 * Destructor.
-                 */
-                virtual ~Diagnosable()
-                {
-                    // No-op.
-                }
-
-                /**
-                 * Get diagnostic record.
-                 *
-                 * @return Diagnostic record.
-                 */
-                virtual const diagnostic::DiagnosticRecordStorage& GetDiagnosticRecords() const = 0;
-
-                /**
-                 * Add new status record.
-                 *
-                 * @param sqlState SQL state.
-                 * @param message Message.
-                 * @param rowNum Associated row number.
-                 * @param columnNum Associated column number.
-                 */
-                virtual void AddStatusRecord(SqlState sqlState, const std::string& message,
-                    int32_t rowNum, int32_t columnNum) = 0;
-
-                /**
-                 * Add new status record.
-                 *
-                 * @param sqlState SQL state.
-                 * @param message Message.
-                 */
-                virtual void AddStatusRecord(SqlState sqlState, const std::string& message) = 0;
-
-            protected:
-                /**
-                 * Default constructor.
-                 */
-                Diagnosable()
-                {
-                    // No-op.
-                }
-            };
-        }
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
deleted file mode 100644
index 5b01f49..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_DIAGNOSABLE_ADAPTER
-#define _IGNITE_ODBC_DRIVER_DIAGNOSABLE_ADAPTER
-
-#include "ignite/odbc/diagnostic/diagnosable.h"
-
-#define IGNITE_ODBC_API_CALL(...)                   \
-        diagnosticRecords.Reset();                  \
-        SqlResult result = (__VA_ARGS__);           \
-        diagnosticRecords.SetHeaderRecord(result)
-
-#define IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS                     \
-        diagnosticRecords.Reset();                              \
-        diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS)
-
-namespace ignite
-{
-    namespace odbc
-    {
-        class Connection;
-
-        namespace diagnostic
-        {
-            /**
-             * Diagnosable interface.
-             */
-            class DiagnosableAdapter : public Diagnosable
-            {
-            public:
-                /**
-                 * Destructor.
-                 */
-                virtual ~DiagnosableAdapter()
-                {
-                    // No-op.
-                }
-
-                /**
-                 * Get diagnostic record.
-                 *
-                 * @return Diagnostic record.
-                 */
-                virtual const diagnostic::DiagnosticRecordStorage& GetDiagnosticRecords() const
-                {
-                    return diagnosticRecords;
-                }
-
-                /**
-                 * Add new status record.
-                 *
-                 * @param sqlState SQL state.
-                 * @param message Message.
-                 * @param rowNum Associated row number.
-                 * @param columnNum Associated column number.
-                 */
-                virtual void AddStatusRecord(SqlState sqlState, const std::string& message,
-                    int32_t rowNum, int32_t columnNum);
-
-                /**
-                 * Add new status record.
-                 *
-                 * @param sqlState SQL state.
-                 * @param message Message.
-                 */
-                virtual void AddStatusRecord(SqlState sqlState, const std::string& message);
-
-            protected:
-                /**
-                 * Constructor.
-                 *
-                 * @param connection Pointer to connection. Used to create
-                 *                   diagnostic records with connection info.
-                 */
-                DiagnosableAdapter(const Connection* connection = 0) :
-                    connection(connection)
-                {
-                    // No-op.
-                }
-
-                /** Diagnostic records. */
-                diagnostic::DiagnosticRecordStorage diagnosticRecords;
-
-            private:
-                /** Connection. */
-                const Connection* connection;
-            };
-        }
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record.h
deleted file mode 100644
index 87d29c1..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_DIAGNOSTIC_RECORD
-#define _IGNITE_ODBC_DRIVER_DIAGNOSTIC_RECORD
-
-#include <stdint.h>
-
-#include <vector>
-
-#include <ignite/common/common.h>
-#include "ignite/odbc/common_types.h"
-#include "ignite/odbc/app/application_data_buffer.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        namespace diagnostic
-        {
-            /**
-             * Status diagnostic record.
-             */
-            class DiagnosticRecord
-            {
-            public:
-                /**
-                 * Default constructor.
-                 */
-                DiagnosticRecord();
-
-                /**
-                 * Constructor.
-                 *
-                 * @param sqlState SQL state code.
-                 * @param message Message.
-                 * @param connectionName Connection name.
-                 * @param serverName Server name.
-                 * @param rowNum Associated row number.
-                 * @param columnNum Associated column number.
-                 */
-                DiagnosticRecord(SqlState sqlState, const std::string& message,
-                    const std::string& connectionName, const std::string& serverName,
-                    int32_t rowNum = 0, int32_t columnNum = 0);
-
-                /**
-                 * Destructor.
-                 */
-                ~DiagnosticRecord();
-
-                /**
-                 * Get class origin.
-                 *
-                 * @return A string that indicates the document that defines the
-                 *         class portion of the SQLSTATE value in this record.
-                 */
-                const std::string& GetClassOrigin() const;
-
-                /**
-                 * Get subclass origin.
-                 *
-                 * @return A string with the same format and valid values as origin,
-                 *         that identifies the defining portion of the subclass
-                 *         portion of the SQLSTATE code.
-                 */
-                const std::string& GetSubclassOrigin() const;
-
-                /**
-                 * Get record message text.
-                 *
-                 * @return An informational message on the error or warning.
-                 */
-                const std::string& GetMessage() const;
-
-                /**
-                 * Get connection name.
-                 *
-                 * @return A string that indicates the name of the connection that
-                 *         the diagnostic record relates to.
-                 */
-                const std::string& GetConnectionName() const;
-
-                /**
-                 * Get server name.
-                 *
-                 * @return A string that indicates the server name that the
-                 *         diagnostic record relates to.
-                 */
-                const std::string& GetServerName() const;
-
-                /**
-                 * Get SQL state of the record.
-                 *
-                 * @return A five-character SQLSTATE diagnostic code.
-                 */
-                const std::string& GetSqlState() const;
-
-                /**
-                 * Get row number.
-                 *
-                 * @return The row number in the rowset, or the parameter number in
-                 *         the set of parameters, with which the status record is
-                 *         associated.
-                 */
-                int32_t GetRowNumber() const;
-
-                /**
-                 * Get column number.
-                 *
-                 * @return Contains the value that represents the column number
-                 *         in the result set or the parameter number in the set
-                 *         of parameters.
-                 */
-                int32_t GetColumnNumber() const;
-
-            private:
-                /** SQL state diagnostic code. */
-                SqlState sqlState;
-
-                /** An informational message on the error or warning. */
-                std::string message;
-
-                /**
-                 * A string that indicates the name of the connection that
-                 * the diagnostic record relates to.
-                 */
-                std::string connectionName;
-
-                /**
-                 * A string that indicates the server name that the
-                 * diagnostic record relates to.
-                 */
-                std::string serverName;
-
-                /**
-                 * The row number in the rowset, or the parameter number in the
-                 * set of parameters, with which the status record is associated.
-                 */
-                int32_t rowNum;
-
-                /**
-                 * Contains the value that represents the column number in the
-                 * result set or the parameter number in the set of parameters.
-                 */
-                int32_t columnNum;
-            };
-        }
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record_storage.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record_storage.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record_storage.h
deleted file mode 100644
index c92c7a5..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnostic_record_storage.h
+++ /dev/null
@@ -1,198 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_DIAGNOSTIC_RECORD_STORAGE
-#define _IGNITE_ODBC_DRIVER_DIAGNOSTIC_RECORD_STORAGE
-
-#include <stdint.h>
-
-#include <vector>
-
-#include <ignite/common/common.h>
-#include "ignite/odbc/common_types.h"
-#include "ignite/odbc/app/application_data_buffer.h"
-#include "ignite/odbc/diagnostic/diagnostic_record.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        namespace diagnostic
-        {
-            /**
-             * Diagnostic record.
-             *
-             * Associated with each environment, connection, statement, and
-             * descriptor handle are diagnostic records. These records contain
-             * diagnostic information about the last function called that used
-             * a particular handle. The records are replaced only when another
-             * function is called using that handle. There is no limit to the
-             * number of diagnostic records that can be stored at any one time.
-             *
-             * This class provides interface for interaction with all handle
-             * diagnostic records. That means both header and status records.
-             */
-            class DiagnosticRecordStorage
-            {
-            public:
-                /**
-                 * Default constructor.
-                 */
-                DiagnosticRecordStorage();
-
-                /**
-                 * Destructor.
-                 */
-                ~DiagnosticRecordStorage();
-
-                /**
-                 * Set header record values.
-                 *
-                 * @param retCode Operation return code.
-                 */
-                void SetHeaderRecord(SqlResult result);
-
-                /**
-                 * Add status record to diagnostic records.
-                 *
-                 * @param record Status record.
-                 */
-                void AddStatusRecord(const DiagnosticRecord& record);
-
-                /**
-                 * Reset diagnostic records state.
-                 */
-                void Reset();
-
-                /**
-                 * Get result of the last operation.
-                 *
-                 * @return Result of the last operation.
-                 */
-                SqlResult GetOperaionResult() const;
-
-                /**
-                 * Get return code of the last operation.
-                 *
-                 * @return Return code of the last operation.
-                 */
-                int GetReturnCode() const;
-
-                /**
-                 * Get row count.
-                 *
-                 * @return Count of rows in cursor.
-                 */
-                int64_t GetRowCount() const;
-
-                /**
-                 * Get dynamic function.
-                 *
-                 * @return String that describes the SQL statement
-                 *         that the underlying function executed.
-                 */
-                const std::string& GetDynamicFunction() const;
-
-                /**
-                 * Get dynamic function code.
-                 *
-                 * @return Numeric code that describes the
-                 *         SQL statement that was executed.
-                 */
-                int32_t GetDynamicFunctionCode() const;
-
-                /**
-                 * Get number of rows affected.
-                 *
-                 * @return The number of rows affected by an insert,
-                 *         delete, or update performed by the last operation.
-                 */
-                int32_t GetRowsAffected() const;
-
-                /**
-                 * Get status records number.
-                 *
-                 * @return Number of status records.
-                 */
-                int32_t GetStatusRecordsNumber() const;
-
-                /**
-                 * Get specified status record.
-                 *
-                 * @param idx Status record index.
-                 * @return Status record instance reference.
-                 */
-                const DiagnosticRecord& GetStatusRecord(int32_t idx) const;
-
-                /**
-                 * Check if the record is in the success state.
-                 *
-                 * @return True if the record is in the success state.
-                 */
-                bool IsSuccessful() const;
-
-                /**
-                 * Get value of the field and put it in buffer.
-                 *
-                 * @param recNum Diagnostic record number.
-                 * @param field Record field.
-                 * @param buffer Buffer to put data to.
-                 * @return Operation result.
-                 */
-                SqlResult GetField(int32_t recNum, DiagnosticField field, app::ApplicationDataBuffer& buffer) const;
-
-            private:
-                IGNITE_NO_COPY_ASSIGNMENT(DiagnosticRecordStorage);
-
-                /**
-                 * Header record field. This field contains the count of rows
-                 * in the cursor.
-                 */
-                int64_t rowCount;
-
-                /**
-                 * Header record field. String that describes the SQL statement
-                 * that the underlying function executed.
-                 */
-                std::string dynamicFunction;
-
-                /**
-                 * Header record field. Numeric code that describes the
-                 * SQL statement that was executed.
-                 */
-                int32_t dynamicFunctionCode;
-
-                /**
-                 * Operation result. This field is mapped to "Return code" header
-                 * record field.
-                 */
-                SqlResult result;
-
-                /**
-                 * Header record field. The number of rows affected by an insert,
-                 * delete, or update performed by the last operation.
-                 */
-                int32_t rowsAffected;
-
-                /** Status records. */
-                std::vector<DiagnosticRecord> statusRecords;
-            };
-        }
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/environment.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/environment.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/environment.h
deleted file mode 100644
index 7168aa3..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/environment.h
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_ENVIRONMENT
-#define _IGNITE_ODBC_DRIVER_ENVIRONMENT
-
-#include "ignite/odbc/diagnostic/diagnosable_adapter.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        class Connection;
-
-        /**
-         * ODBC environment.
-         */
-        class Environment : public diagnostic::DiagnosableAdapter
-        {
-        public:
-            /**
-             * Constructor.
-             */
-            Environment();
-
-            /**
-             * Destructor.
-             */
-            ~Environment();
-
-            /**
-             * Create connection associated with the environment.
-             *
-             * @return Pointer to valid instance on success or NULL on failure.
-             */
-            Connection* CreateConnection();
-
-            /**
-             * Perform transaction commit on all the associated connections.
-             */
-            void TransactionCommit();
-
-            /**
-             * Perform transaction rollback on all the associated connections.
-             */
-            void TransactionRollback();
-
-            /**
-             * Set attribute.
-             *
-             * @param attr Attribute to set.
-             * @param value Value.
-             * @param len Value length if the attribute is of string type.
-             */
-            void SetAttribute(int32_t attr, void* value, int32_t len);
-
-            /**
-             * Get attribute.
-             *
-             * @param attr Attribute to set.
-             * @param buffer Buffer to put value to.
-             */
-            void GetAttribute(int32_t attr, app::ApplicationDataBuffer& buffer);
-
-        private:
-            IGNITE_NO_COPY_ASSIGNMENT(Environment);
-
-            /**
-             * Create connection associated with the environment.
-             * Internal call.
-             *
-             * @return Pointer to valid instance on success or NULL on failure.
-             * @return Operation result.
-             */
-            SqlResult InternalCreateConnection(Connection*& connection);
-
-            /**
-             * Perform transaction commit on all the associated connections.
-             * Internal call.
-             *
-             * @return Operation result.
-             */
-            SqlResult InternalTransactionCommit();
-
-            /**
-             * Perform transaction rollback on all the associated connections.
-             * Internal call.
-             *
-             * @return Operation result.
-             */
-            SqlResult InternalTransactionRollback();
-
-            /**
-             * Set attribute.
-             * Internal call.
-             *
-             * @param attr Attribute to set.
-             * @param value Value.
-             * @param len Value length if the attribute is of string type.
-             * @return Operation result.
-             */
-            SqlResult InternalSetAttribute(int32_t attr, void* value, int32_t len);
-
-            /**
-             * Get attribute.
-             * Internal call.
-             *
-             * @param attr Attribute to set.
-             * @param buffer Buffer to put value to.
-             * @return Operation result.
-             */
-            SqlResult InternalGetAttribute(int32_t attr, app::ApplicationDataBuffer& buffer);
-
-            /** ODBC version. */
-            int32_t odbcVersion;
-
-            /** ODBC null-termintaion of string behaviour. */
-            int32_t odbcNts;
-        };
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/message.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/message.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/message.h
deleted file mode 100644
index f4d1e3c..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/message.h
+++ /dev/null
@@ -1,630 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_DRIVER_MESSAGE
-#define _IGNITE_ODBC_DRIVER_MESSAGE
-
-#include <stdint.h>
-#include <string>
-
-#include "ignite/impl/binary/binary_writer_impl.h"
-#include "ignite/impl/binary/binary_reader_impl.h"
-
-#include "ignite/odbc/utility.h"
-#include "ignite/odbc/result_page.h"
-#include "ignite/odbc/meta/column_meta.h"
-#include "ignite/odbc/meta/table_meta.h"
-#include "ignite/odbc/app/parameter.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        enum RequestType
-        {
-            REQUEST_TYPE_EXECUTE_SQL_QUERY = 1,
-
-            REQUEST_TYPE_FETCH_SQL_QUERY = 2,
-
-            REQUEST_TYPE_CLOSE_SQL_QUERY = 3,
-
-            REQUEST_TYPE_GET_COLUMNS_METADATA = 4,
-
-            REQUEST_TYPE_GET_TABLES_METADATA = 5
-        };
-
-        enum ResponseStatus
-        {
-            RESPONSE_STATUS_SUCCESS = 0,
-
-            RESPONSE_STATUS_FAILED = 1
-        };
-
-        /**
-         * Query execute request.
-         */
-        class QueryExecuteRequest
-        {
-        public:
-            /**
-             * Constructor.
-             *
-             * @param cache Cache name.
-             * @param sql SQL query.
-             * @param argsNum Number of arguments.
-             */
-            QueryExecuteRequest(const std::string& cache, const std::string& sql,
-                const app::ParameterBindingMap& params) :
-                cache(cache), sql(sql), params(params)
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryExecuteRequest()
-            {
-                // No-op.
-            }
-
-            /**
-             * Write request using provided writer.
-             * @param writer Writer.
-             */
-            void Write(ignite::impl::binary::BinaryWriterImpl& writer) const
-            {
-                writer.WriteInt8(REQUEST_TYPE_EXECUTE_SQL_QUERY);
-                utility::WriteString(writer, cache);
-                utility::WriteString(writer, sql);
-
-                writer.WriteInt32(static_cast<int32_t>(params.size()));
-
-                app::ParameterBindingMap::const_iterator i;
-
-                for (i = params.begin(); i != params.end(); ++i)
-                    i->second.Write(writer);
-            }
-
-        private:
-            /** Cache name. */
-            std::string cache;
-
-            /** SQL query. */
-            std::string sql;
-
-            /** Parameters bindings. */
-            const app::ParameterBindingMap& params;
-        };
-
-        /**
-         * Query close request.
-         */
-        class QueryCloseRequest
-        {
-        public:
-            /**
-             * Constructor.
-             *
-             * @param queryId Query ID.
-             */
-            QueryCloseRequest(int64_t queryId) : queryId(queryId)
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryCloseRequest()
-            {
-                // No-op.
-            }
-
-            /**
-             * Write request using provided writer.
-             * @param writer Writer.
-             */
-            void Write(ignite::impl::binary::BinaryWriterImpl& writer) const
-            {
-                writer.WriteInt8(REQUEST_TYPE_CLOSE_SQL_QUERY);
-                writer.WriteInt64(queryId);
-            }
-
-        private:
-            /** Query ID. */
-            int64_t queryId;
-        };
-
-        /**
-         * Query fetch request.
-         */
-        class QueryFetchRequest
-        {
-        public:
-            /**
-             * Constructor.
-             *
-             * @param queryId Query ID.
-             * @param pageSize Required page size.
-             */
-            QueryFetchRequest(int64_t queryId, int32_t pageSize) :
-                queryId(queryId), pageSize(pageSize)
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryFetchRequest()
-            {
-                // No-op.
-            }
-
-            /**
-             * Write request using provided writer.
-             * @param writer Writer.
-             */
-            void Write(ignite::impl::binary::BinaryWriterImpl& writer) const
-            {
-                writer.WriteInt8(REQUEST_TYPE_FETCH_SQL_QUERY);
-                writer.WriteInt64(queryId);
-                writer.WriteInt32(pageSize);
-            }
-
-        private:
-            /** Query ID. */
-            int64_t queryId;
-
-            /** SQL query. */
-            int32_t pageSize;
-        };
-
-        /**
-         * Query get columns metadata request.
-         */
-        class QueryGetColumnsMetaRequest
-        {
-        public:
-            /**
-             * Constructor.
-             *
-             * @param schema Schema name.
-             * @param table Table name.
-             * @param column Column name.
-             */
-            QueryGetColumnsMetaRequest(const std::string& schema, const std::string& table, const std::string& column) :
-                schema(schema), table(table), column(column)
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryGetColumnsMetaRequest()
-            {
-                // No-op.
-            }
-
-            /**
-             * Write request using provided writer.
-             * @param writer Writer.
-             */
-            void Write(ignite::impl::binary::BinaryWriterImpl& writer) const
-            {
-                writer.WriteInt8(REQUEST_TYPE_GET_COLUMNS_METADATA);
-                
-                utility::WriteString(writer, schema);
-                utility::WriteString(writer, table);
-                utility::WriteString(writer, column);
-            }
-
-        private:
-            /** Schema search pattern. */
-            std::string schema;
-
-            /** Table search pattern. */
-            std::string table;
-
-            /** Column search pattern. */
-            std::string column;
-        };
-
-        /**
-         * Query get tables metadata request.
-         */
-        class QueryGetTablesMetaRequest
-        {
-        public:
-            /**
-             * Constructor.
-             *
-             * @param catalog Catalog search pattern.
-             * @param schema Schema search pattern.
-             * @param table Table search pattern.
-             * @param tableTypes Table types search pattern.
-             */
-            QueryGetTablesMetaRequest(const std::string& catalog, const std::string& schema,
-                                      const std::string& table, const std::string& tableTypes) :
-                catalog(catalog), schema(schema), table(table), tableTypes(tableTypes)
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryGetTablesMetaRequest()
-            {
-                // No-op.
-            }
-
-            /**
-             * Write request using provided writer.
-             * @param writer Writer.
-             */
-            void Write(ignite::impl::binary::BinaryWriterImpl& writer) const
-            {
-                writer.WriteInt8(REQUEST_TYPE_GET_TABLES_METADATA);
-
-                utility::WriteString(writer, catalog);
-                utility::WriteString(writer, schema);
-                utility::WriteString(writer, table);
-                utility::WriteString(writer, tableTypes);
-            }
-
-        private:
-            /** Column search pattern. */
-            std::string catalog;
-
-            /** Schema search pattern. */
-            std::string schema;
-
-            /** Table search pattern. */
-            std::string table;
-
-            /** Column search pattern. */
-            std::string tableTypes;
-        };
-
-        /**
-         * Query close response.
-         */
-        class QueryResponse
-        {
-        public:
-            /**
-             * Constructor.
-             */
-            QueryResponse() : status(RESPONSE_STATUS_FAILED), error()
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Read response using provided reader.
-             * @param reader Reader.
-             */
-            void Read(ignite::impl::binary::BinaryReaderImpl& reader)
-            {
-                status = reader.ReadInt8();
-
-                if (status == RESPONSE_STATUS_SUCCESS)
-                {
-                    ReadOnSuccess(reader);
-                }
-                else
-                {
-                    int32_t errorLen = reader.ReadString(0, 0);
-                    error.resize(errorLen);
-
-                    reader.ReadString(&error[0], static_cast<int32_t>(error.size()));
-                }
-            }
-            
-            /**
-             * Get request processing status.
-             * @return Status.
-             */
-            int8_t GetStatus() const
-            {
-                return status;
-            }
-
-            /**
-             * Get resulting error.
-             * @return Error.
-             */
-            const std::string& GetError() const
-            {
-                return error;
-            }
-
-        protected:
-            /**
-             * Read data if response status is RESPONSE_STATUS_SUCCESS.
-             * @param reader Reader.
-             */
-            virtual void ReadOnSuccess(ignite::impl::binary::BinaryReaderImpl& reader) = 0;
-
-        private:
-            /** Request processing status. */
-            int8_t status;
-
-            /** Error message. */
-            std::string error;
-        };
-
-
-        /**
-         * Query close response.
-         */
-        class QueryCloseResponse : public QueryResponse
-        {
-        public:
-            /**
-             * Constructor.
-             */
-            QueryCloseResponse() : queryId(0)
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryCloseResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Get query ID.
-             * @return Query ID.
-             */
-            int64_t GetQueryId() const
-            {
-                return queryId;
-            }
-
-        private:
-            /**
-             * Read response using provided reader.
-             * @param reader Reader.
-             */
-            virtual void ReadOnSuccess(ignite::impl::binary::BinaryReaderImpl& reader)
-            {
-                queryId = reader.ReadInt64();
-            }
-
-            /** Query ID. */
-            int64_t queryId;
-        };
-
-        /**
-         * Query execute response.
-         */
-        class QueryExecuteResponse : public QueryResponse
-        {
-        public:
-            /**
-             * Constructor.
-             */
-            QueryExecuteResponse() : queryId(0), meta()
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryExecuteResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Get query ID.
-             * @return Query ID.
-             */
-            int64_t GetQueryId() const
-            {
-                return queryId;
-            }
-
-            /**
-             * Get column metadata.
-             * @return Column metadata.
-             */
-            const meta::ColumnMetaVector& GetMeta() const
-            {
-                return meta;
-            }
-
-        private:
-            /**
-             * Read response using provided reader.
-             * @param reader Reader.
-             */
-            virtual void ReadOnSuccess(ignite::impl::binary::BinaryReaderImpl& reader)
-            {
-                queryId = reader.ReadInt64();
-
-                meta::ReadColumnMetaVector(reader, meta);
-            }
-
-            /** Query ID. */
-            int64_t queryId;
-
-            /** Columns metadata. */
-            meta::ColumnMetaVector meta;
-        };
-
-        /**
-         * Query fetch response.
-         */
-        class QueryFetchResponse : public QueryResponse
-        {
-        public:
-            /**
-             * Constructor.
-             * @param resultPage Result page.
-             */
-            QueryFetchResponse(ResultPage& resultPage) : queryId(0), resultPage(resultPage)
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryFetchResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Get query ID.
-             * @return Query ID.
-             */
-            int64_t GetQueryId() const
-            {
-                return queryId;
-            }
-
-        private:
-            /**
-             * Read response using provided reader.
-             * @param reader Reader.
-             */
-            virtual void ReadOnSuccess(ignite::impl::binary::BinaryReaderImpl& reader)
-            {
-                queryId = reader.ReadInt64();
-
-                resultPage.Read(reader);
-            }
-
-            /** Query ID. */
-            int64_t queryId;
-
-            /** Result page. */
-            ResultPage& resultPage;
-        };
-
-        /**
-         * Query get column metadata response.
-         */
-        class QueryGetColumnsMetaResponse : public QueryResponse
-        {
-        public:
-            /**
-             * Constructor.
-             */
-            QueryGetColumnsMetaResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryGetColumnsMetaResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Get column metadata.
-             * @return Column metadata.
-             */
-            const meta::ColumnMetaVector& GetMeta() const
-            {
-                return meta;
-            }
-
-        private:
-            /**
-             * Read response using provided reader.
-             * @param reader Reader.
-             */
-            virtual void ReadOnSuccess(ignite::impl::binary::BinaryReaderImpl& reader)
-            {
-                meta::ReadColumnMetaVector(reader, meta);
-            }
-
-            /** Columns metadata. */
-            meta::ColumnMetaVector meta;
-        };
-
-        /**
-         * Query get table metadata response.
-         */
-        class QueryGetTablesMetaResponse : public QueryResponse
-        {
-        public:
-            /**
-             * Constructor.
-             */
-            QueryGetTablesMetaResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Destructor.
-             */
-            ~QueryGetTablesMetaResponse()
-            {
-                // No-op.
-            }
-
-            /**
-             * Get column metadata.
-             * @return Column metadata.
-             */
-            const meta::TableMetaVector& GetMeta() const
-            {
-                return meta;
-            }
-
-        private:
-            /**
-             * Read response using provided reader.
-             * @param reader Reader.
-             */
-            virtual void ReadOnSuccess(ignite::impl::binary::BinaryReaderImpl& reader)
-            {
-                meta::ReadTableMetaVector(reader, meta);
-            }
-
-            /** Columns metadata. */
-            meta::TableMetaVector meta;
-        };
-    }
-}
-
-#endif
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/e8287063/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/meta/column_meta.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/meta/column_meta.h b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/meta/column_meta.h
deleted file mode 100644
index 9bc7227..0000000
--- a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/meta/column_meta.h
+++ /dev/null
@@ -1,210 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _IGNITE_ODBC_COLUMN_META
-#define _IGNITE_ODBC_COLUMN_META
-
-#include <stdint.h>
-#include <string>
-
-#include "ignite/impl/binary/binary_reader_impl.h"
-
-#include "ignite/odbc/common_types.h"
-#include "ignite/odbc/utility.h"
-
-namespace ignite
-{
-    namespace odbc
-    {
-        namespace meta
-        {
-            /**
-             * Column metadata.
-             */
-            class ColumnMeta
-            {
-            public:
-#ifdef ODBC_DEBUG
-                /**
-                 * Convert attribute ID to string containing its name.
-                 * Debug function.
-                 * @param type Attribute ID.
-                 * @return Null-terminated string containing attribute name.
-                 */
-                static const char* AttrIdToString(uint16_t id);
-#endif
-
-                /**
-                 * Default constructor.
-                 */
-                ColumnMeta()
-                {
-                    // No-op.
-                }
-
-                /**
-                 * Constructor.
-                 *
-                 * @param schemaName Schema name.
-                 * @param tableName Table name.
-                 * @param columnName Column name.
-                 * @param typeName Type name.
-                 * @param dataType Data type.
-                 */
-                ColumnMeta(const std::string& schemaName, const std::string& tableName,
-                           const std::string& columnName, const std::string& typeName, int8_t dataType) :
-                    schemaName(schemaName), tableName(tableName), columnName(columnName), 
-                    typeName(typeName), dataType(dataType)
-                {
-                    // No-op.
-                }
-
-                /**
-                 * Destructor.
-                 */
-                ~ColumnMeta()
-                {
-                    // No-op.
-                }
-
-                /**
-                 * Copy constructor.
-                 */
-                ColumnMeta(const ColumnMeta& other) :
-                    schemaName(other.schemaName),
-                    tableName(other.tableName),
-                    columnName(other.columnName),
-                    typeName(other.typeName),
-                    dataType(other.dataType)
-                {
-                    // No-op.
-                }
-
-                /**
-                 * Copy operator.
-                 */
-                ColumnMeta& operator=(const ColumnMeta& other)
-                {
-                    schemaName = other.schemaName;
-                    tableName = other.tableName;
-                    columnName = other.columnName;
-                    typeName = other.typeName;
-                    dataType = other.dataType;
-
-                    return *this;
-                }
-
-                /**
-                 * Read using reader.
-                 * @param reader Reader.
-                 */
-                void Read(ignite::impl::binary::BinaryReaderImpl& reader);
-
-                /**
-                 * Get schema name.
-                 * @return Schema name.
-                 */
-                const std::string& GetSchemaName() const
-                {
-                    return schemaName;
-                }
-
-                /**
-                 * Get table name.
-                 * @return Table name.
-                 */
-                const std::string& GetTableName() const
-                {
-                    return tableName;
-                }
-
-                /**
-                 * Get column name.
-                 * @return Column name.
-                 */
-                const std::string& GetColumnName() const
-                {
-                    return columnName;
-                }
-
-                /**
-                 * Get column type name.
-                 * @return Column type name.
-                 */
-                const std::string& GetColumnTypeName() const
-                {
-                    return typeName;
-                }
-
-                /**
-                 * Get data type.
-                 * @return Data type.
-                 */
-                int8_t GetDataType() const 
-                {
-                    return dataType;
-                }
-
-                /**
-                 * Try to get attribute of a string type.
-                 *
-                 * @param fieldId Field ID.
-                 * @param value Output attribute value.
-                 * @return True if the attribute supported and false otherwise.
-                 */
-                bool GetAttribute(uint16_t fieldId, std::string& value) const;
-
-                /**
-                 * Try to get attribute of a integer type.
-                 *
-                 * @param fieldId Field ID.
-                 * @param value Output attribute value.
-                 * @return True if the attribute supported and false otherwise.
-                 */
-                bool GetAttribute(uint16_t fieldId, SqlLen& value) const;
-
-            private:
-                /** Schema name. */
-                std::string schemaName;
-
-                /** Table name. */
-                std::string tableName;
-
-                /** Column name. */
-                std::string columnName;
-
-                /** Type name. */
-                std::string typeName;
-
-                /** Data type. */
-                int8_t dataType;
-            };
-
-            /** Column metadata vector alias. */
-            typedef std::vector<ColumnMeta> ColumnMetaVector;
-
-            /**
-             * Read columns metadata collection.
-             * @param reader Reader.
-             * @param meta Collection.
-             */
-            void ReadColumnMetaVector(ignite::impl::binary::BinaryReaderImpl& reader, ColumnMetaVector& meta);
-        }
-    }
-}
-
-#endif
\ No newline at end of file


Mime
View raw message