|
@@ -18,6 +18,12 @@
|
|
|
#ifndef _CASSANDRAEMBED_INCL
|
|
|
#define _CASSANDRAEMBED_INCL
|
|
|
|
|
|
+#ifdef CASSANDRAEMBED_EXPORTS
|
|
|
+ #define CASSANDRAEMBED_API DECL_EXPORT
|
|
|
+#else
|
|
|
+ #define CASSANDRAEMBED_API DECL_IMPORT
|
|
|
+#endif
|
|
|
+
|
|
|
namespace cassandraembed {
|
|
|
|
|
|
__declspec(noreturn) extern void UNSUPPORTED(const char *feature) __attribute__((noreturn));
|
|
@@ -29,7 +35,7 @@ extern bool isString(CassValueType t);
|
|
|
|
|
|
// Wrappers to Cassandra structures that require corresponding releases
|
|
|
|
|
|
-class CassandraPrepared : public CInterfaceOf<IInterface>
|
|
|
+class CASSANDRAEMBED_API CassandraPrepared : public CInterfaceOf<IInterface>
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraPrepared(const CassPrepared *_prepared, const char *_queryString)
|
|
@@ -55,7 +61,7 @@ private:
|
|
|
const CassPrepared *prepared;
|
|
|
};
|
|
|
|
|
|
-class CassandraSession : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraSession : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraSession() : session(NULL) {}
|
|
@@ -79,7 +85,7 @@ private:
|
|
|
class CassandraStatementInfo;
|
|
|
class CassandraStatement;
|
|
|
|
|
|
-class CassandraClusterSession : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraClusterSession : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraClusterSession(CassCluster *_cluster)
|
|
@@ -134,7 +140,7 @@ private:
|
|
|
StringAttr keyspace;
|
|
|
};
|
|
|
|
|
|
-class CassandraFuture : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraFuture : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraFuture(CassFuture *_future) : future(_future)
|
|
@@ -161,7 +167,7 @@ protected:
|
|
|
CassFuture *future;
|
|
|
};
|
|
|
|
|
|
-class CassandraFutureResult : public CassandraFuture
|
|
|
+class CASSANDRAEMBED_API CassandraFutureResult : public CassandraFuture
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraFutureResult(CassFuture *_future) : CassandraFuture(_future)
|
|
@@ -188,7 +194,7 @@ private:
|
|
|
|
|
|
};
|
|
|
|
|
|
-class CassandraBatch : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraBatch : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraBatch(CassBatchType _type)
|
|
@@ -214,7 +220,7 @@ private:
|
|
|
CassBatch *batch;
|
|
|
};
|
|
|
|
|
|
-class CassandraStatement : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraStatement : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraStatement(CassStatement *_statement) : statement(_statement)
|
|
@@ -334,7 +340,7 @@ private:
|
|
|
CassStatement *statement;
|
|
|
};
|
|
|
|
|
|
-class CassandraRetryingFuture : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraRetryingFuture : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
CassandraRetryingFuture(CassSession *_session, CassStatement *_statement, Semaphore *_limiter, unsigned _retries);
|
|
@@ -357,7 +363,7 @@ private:
|
|
|
Semaphore *limiter;
|
|
|
};
|
|
|
|
|
|
-class CassandraResult : public CInterfaceOf<IInterface>
|
|
|
+class CASSANDRAEMBED_API CassandraResult : public CInterfaceOf<IInterface>
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraResult(const CassResult *_result) : result(_result)
|
|
@@ -377,7 +383,7 @@ private:
|
|
|
const CassResult *result;
|
|
|
};
|
|
|
|
|
|
-class CassandraIterator : public CInterfaceOf<IInterface>
|
|
|
+class CASSANDRAEMBED_API CassandraIterator : public CInterfaceOf<IInterface>
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraIterator(CassIterator *_iterator) : iterator(_iterator)
|
|
@@ -403,7 +409,7 @@ protected:
|
|
|
CassIterator *iterator;
|
|
|
};
|
|
|
|
|
|
-class CassandraCollection : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraCollection : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
inline CassandraCollection(CassCollection *_collection) : collection(_collection)
|
|
@@ -423,7 +429,7 @@ private:
|
|
|
CassCollection *collection;
|
|
|
};
|
|
|
|
|
|
-class CassandraStatementInfo : public CInterface
|
|
|
+class CASSANDRAEMBED_API CassandraStatementInfo : public CInterface
|
|
|
{
|
|
|
public:
|
|
|
CassandraStatementInfo(CassandraSession *_session, CassandraPrepared *_prepared, unsigned _numBindings, CassBatchType _batchMode, unsigned pageSize, Semaphore *_semaphore, unsigned _maxRetries);
|
|
@@ -466,15 +472,15 @@ protected:
|
|
|
CassBatchType batchMode;
|
|
|
};
|
|
|
|
|
|
-extern bool getBooleanResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
-extern void getDataResult(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, void * &result);
|
|
|
-extern __int64 getSignedResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
-extern unsigned __int64 getUnsignedResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
-extern double getRealResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
-extern void getStringResult(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, char * &result);
|
|
|
-extern void getUTF8Result(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, char * &result);
|
|
|
-extern void getUnicodeResult(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, UChar * &result);
|
|
|
-extern void getDecimalResult(const RtlFieldInfo *field, const CassValue *value, Decimal &result);
|
|
|
+extern CASSANDRAEMBED_API bool getBooleanResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
+extern CASSANDRAEMBED_API void getDataResult(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, void * &result);
|
|
|
+extern CASSANDRAEMBED_API __int64 getSignedResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
+extern CASSANDRAEMBED_API unsigned __int64 getUnsignedResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
+extern CASSANDRAEMBED_API double getRealResult(const RtlFieldInfo *field, const CassValue *value);
|
|
|
+extern CASSANDRAEMBED_API void getStringResult(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, char * &result);
|
|
|
+extern CASSANDRAEMBED_API void getUTF8Result(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, char * &result);
|
|
|
+extern CASSANDRAEMBED_API void getUnicodeResult(const RtlFieldInfo *field, const CassValue *value, size32_t &chars, UChar * &result);
|
|
|
+extern CASSANDRAEMBED_API void getDecimalResult(const RtlFieldInfo *field, const CassValue *value, Decimal &result);
|
|
|
|
|
|
} // namespace
|
|
|
#endif
|