You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2017/07/26 10:53:29 UTC
[13/19] ignite git commit: IGNITE-5770 Refactor PlatformProcessor to
PlatformTarget mechanism
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/cpp/jni/src/exports.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/jni/src/exports.cpp b/modules/platforms/cpp/jni/src/exports.cpp
index 2aecd59..9b7defd 100644
--- a/modules/platforms/cpp/jni/src/exports.cpp
+++ b/modules/platforms/cpp/jni/src/exports.cpp
@@ -26,12 +26,8 @@ extern "C" {
return gcj::JniContext::Reallocate(memPtr, cap);
}
- void* IGNITE_CALL IgniteIgnitionStart(gcj::JniContext* ctx, char* cfgPath, char* name, int factoryId, long long dataPtr) {
- return ctx->IgnitionStart(cfgPath, name, factoryId, dataPtr);
- }
-
- void* IGNITE_CALL IgniteIgnitionInstance(gcj::JniContext* ctx, char* name) {
- return ctx->IgnitionInstance(name);
+ void IGNITE_CALL IgniteIgnitionStart(gcj::JniContext* ctx, char* cfgPath, char* name, int factoryId, long long dataPtr) {
+ ctx->IgnitionStart(cfgPath, name, factoryId, dataPtr);
}
long long IGNITE_CALL IgniteIgnitionEnvironmentPointer(gcj::JniContext* ctx, char* name) {
@@ -46,118 +42,10 @@ extern "C" {
return ctx->IgnitionStopAll(cancel);
}
- void IGNITE_CALL IgniteProcessorReleaseStart(gcj::JniContext* ctx, void* obj) {
- return ctx->ProcessorReleaseStart(static_cast<jobject>(obj));
- }
-
- void* IGNITE_CALL IgniteProcessorProjection(gcj::JniContext* ctx, void* obj) {
- return ctx->ProcessorProjection(static_cast<jobject>(obj));
- }
-
- void* IGNITE_CALL IgniteProcessorCache(gcj::JniContext* ctx, void* obj, char* name) {
- return ctx->ProcessorCache(static_cast<jobject>(obj), name);
- }
-
- void* IGNITE_CALL IgniteProcessorCreateCache(gcj::JniContext* ctx, void* obj, char* name) {
- return ctx->ProcessorCreateCache(static_cast<jobject>(obj), name);
- }
-
- void* IGNITE_CALL IgniteProcessorGetOrCreateCache(gcj::JniContext* ctx, void* obj, char* name) {
- return ctx->ProcessorGetOrCreateCache(static_cast<jobject>(obj), name);
- }
-
- void* IGNITE_CALL IgniteProcessorCreateCacheFromConfig(gcj::JniContext* ctx, void* obj, long long memPtr) {
- return ctx->ProcessorCreateCacheFromConfig(static_cast<jobject>(obj), memPtr);
- }
-
- void* IGNITE_CALL IgniteProcessorGetOrCreateCacheFromConfig(gcj::JniContext* ctx, void* obj, long long memPtr) {
- return ctx->ProcessorGetOrCreateCacheFromConfig(static_cast<jobject>(obj), memPtr);
- }
-
- void* IGNITE_CALL IgniteProcessorCreateNearCache(gcj::JniContext* ctx, void* obj, char* name, long long memPtr) {
- return ctx->ProcessorCreateNearCache(static_cast<jobject>(obj), name, memPtr);
- }
-
- void* IGNITE_CALL IgniteProcessorGetOrCreateNearCache(gcj::JniContext* ctx, void* obj, char* name, long long memPtr) {
- return ctx->ProcessorGetOrCreateNearCache(static_cast<jobject>(obj), name, memPtr);
- }
-
- void IGNITE_CALL IgniteProcessorDestroyCache(gcj::JniContext* ctx, void* obj, char* name) {
- ctx->ProcessorDestroyCache(static_cast<jobject>(obj), name);
- }
-
- void* IGNITE_CALL IgniteProcessorAffinity(gcj::JniContext* ctx, void* obj, char* name) {
- return ctx->ProcessorAffinity(static_cast<jobject>(obj), name);
- }
-
- void*IGNITE_CALL IgniteProcessorDataStreamer(gcj::JniContext* ctx, void* obj, char* name, bool keepPortable) {
- return ctx->ProcessorDataStreamer(static_cast<jobject>(obj), name, keepPortable);
- }
-
- void* IGNITE_CALL IgniteProcessorTransactions(gcj::JniContext* ctx, void* obj) {
- return ctx->ProcessorTransactions(static_cast<jobject>(obj));
- }
-
- void* IGNITE_CALL IgniteProcessorCompute(gcj::JniContext* ctx, void* obj, void* prj) {
- return ctx->ProcessorCompute(static_cast<jobject>(obj), static_cast<jobject>(prj));
- }
-
- void* IGNITE_CALL IgniteProcessorMessage(gcj::JniContext* ctx, void* obj, void* prj) {
- return ctx->ProcessorMessage(static_cast<jobject>(obj), static_cast<jobject>(prj));
- }
-
- void* IGNITE_CALL IgniteProcessorEvents(gcj::JniContext* ctx, void* obj, void* prj) {
- return ctx->ProcessorEvents(static_cast<jobject>(obj), static_cast<jobject>(prj));
- }
-
- void* IGNITE_CALL IgniteProcessorServices(gcj::JniContext* ctx, void* obj, void* prj) {
- return ctx->ProcessorServices(static_cast<jobject>(obj), static_cast<jobject>(prj));
- }
-
- void* IGNITE_CALL IgniteProcessorExtensions(gcj::JniContext* ctx, void* obj) {
- return ctx->ProcessorExtensions(static_cast<jobject>(obj));
- }
-
- void* IGNITE_CALL IgniteProcessorExtension(gcj::JniContext* ctx, void* obj, int id) {
- return ctx->ProcessorExtension(static_cast<jobject>(obj), id);
- }
-
- void* IGNITE_CALL IgniteProcessorAtomicLong(gcj::JniContext* ctx, void* obj, char* name, long long initVal, bool create) {
- return ctx->ProcessorAtomicLong(static_cast<jobject>(obj), name, initVal, create);
- }
-
- void* IGNITE_CALL IgniteProcessorAtomicSequence(gcj::JniContext* ctx, void* obj, char* name, long long initVal, bool create) {
- return ctx->ProcessorAtomicSequence(static_cast<jobject>(obj), name, initVal, create);
- }
-
- void* IGNITE_CALL IgniteProcessorAtomicReference(gcj::JniContext* ctx, void* obj, char* name, long long memPtr, bool create) {
- return ctx->ProcessorAtomicReference(static_cast<jobject>(obj), name, memPtr, create);
- }
-
- void IGNITE_CALL IgniteProcessorGetIgniteConfiguration(gcj::JniContext* ctx, void* obj, long long memPtr) {
- return ctx->ProcessorGetIgniteConfiguration(static_cast<jobject>(obj), memPtr);
- }
-
- void IGNITE_CALL IgniteProcessorGetCacheNames(gcj::JniContext* ctx, void* obj, long long memPtr) {
- return ctx->ProcessorGetCacheNames(static_cast<jobject>(obj), memPtr);
- }
-
long long IGNITE_CALL IgniteTargetInLongOutLong(gcj::JniContext* ctx, void* obj, int opType, long long val) {
return ctx->TargetInLongOutLong(static_cast<jobject>(obj), opType, val);
}
- bool IGNITE_CALL IgniteProcessorLoggerIsLevelEnabled(gcj::JniContext* ctx, void* obj, int level) {
- return ctx->ProcessorLoggerIsLevelEnabled(static_cast<jobject>(obj), level);
- }
-
- void IGNITE_CALL IgniteProcessorLoggerLog(gcj::JniContext* ctx, void* obj, int level, char* message, char* category, char* errorInfo) {
- ctx->ProcessorLoggerLog(static_cast<jobject>(obj), level, message, category, errorInfo);
- }
-
- void* IGNITE_CALL IgniteProcessorBinaryProcessor(gcj::JniContext* ctx, void* obj) {
- return ctx->ProcessorBinaryProcessor(static_cast<jobject>(obj));
- }
-
long long IGNITE_CALL IgniteTargetInStreamOutLong(gcj::JniContext* ctx, void* obj, int opType, long long memPtr) {
return ctx->TargetInStreamOutLong(static_cast<jobject>(obj), opType, memPtr);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/cpp/jni/src/java.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/jni/src/java.cpp b/modules/platforms/cpp/jni/src/java.cpp
index bc6af34..7eadec0 100644
--- a/modules/platforms/cpp/jni/src/java.cpp
+++ b/modules/platforms/cpp/jni/src/java.cpp
@@ -223,32 +223,6 @@ namespace ignite
const char* C_PLATFORM_PROCESSOR = "org/apache/ignite/internal/processors/platform/PlatformProcessor";
JniMethod M_PLATFORM_PROCESSOR_RELEASE_START = JniMethod("releaseStart", "()V", false);
- JniMethod M_PLATFORM_PROCESSOR_PROJECTION = JniMethod("projection", "()Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_CACHE = JniMethod("cache", "(Ljava/lang/String;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_CREATE_CACHE = JniMethod("createCache", "(Ljava/lang/String;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_GET_OR_CREATE_CACHE = JniMethod("getOrCreateCache", "(Ljava/lang/String;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_CREATE_CACHE_FROM_CONFIG = JniMethod("createCacheFromConfig", "(J)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_GET_OR_CREATE_CACHE_FROM_CONFIG = JniMethod("getOrCreateCacheFromConfig", "(J)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_CREATE_NEAR_CACHE = JniMethod("createNearCache", "(Ljava/lang/String;J)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_GET_OR_CREATE_NEAR_CACHE = JniMethod("getOrCreateNearCache", "(Ljava/lang/String;J)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_DESTROY_CACHE = JniMethod("destroyCache", "(Ljava/lang/String;)V", false);
- JniMethod M_PLATFORM_PROCESSOR_AFFINITY = JniMethod("affinity", "(Ljava/lang/String;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_DATA_STREAMER = JniMethod("dataStreamer", "(Ljava/lang/String;Z)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_TRANSACTIONS = JniMethod("transactions", "()Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_COMPUTE = JniMethod("compute", "(Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_MESSAGE = JniMethod("message", "(Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_EVENTS = JniMethod("events", "(Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_SERVICES = JniMethod("services", "(Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_EXTENSIONS = JniMethod("extensions", "()Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_EXTENSION = JniMethod("extension", "(I)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_ATOMIC_LONG = JniMethod("atomicLong", "(Ljava/lang/String;JZ)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_ATOMIC_SEQUENCE = JniMethod("atomicSequence", "(Ljava/lang/String;JZ)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_ATOMIC_REFERENCE = JniMethod("atomicReference", "(Ljava/lang/String;JZ)Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
- JniMethod M_PLATFORM_PROCESSOR_GET_IGNITE_CONFIGURATION = JniMethod("getIgniteConfiguration", "(J)V", false);
- JniMethod M_PLATFORM_PROCESSOR_GET_CACHE_NAMES = JniMethod("getCacheNames", "(J)V", false);
- JniMethod M_PLATFORM_PROCESSOR_LOGGER_IS_LEVEL_ENABLED = JniMethod("loggerIsLevelEnabled", "(I)Z", false);
- JniMethod M_PLATFORM_PROCESSOR_LOGGER_LOG = JniMethod("loggerLog", "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V", false);
- JniMethod M_PLATFORM_PROCESSOR_BINARY_PROCESSOR = JniMethod("binaryProcessor", "()Lorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;", false);
const char* C_PLATFORM_TARGET = "org/apache/ignite/internal/processors/platform/PlatformTargetProxy";
JniMethod M_PLATFORM_TARGET_IN_LONG_OUT_LONG = JniMethod("inLongOutLong", "(IJ)J", false);
@@ -262,86 +236,9 @@ namespace ignite
const char* C_PLATFORM_CALLBACK_UTILS = "org/apache/ignite/internal/processors/platform/callback/PlatformCallbackUtils";
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_STORE_CREATE = JniMethod("cacheStoreCreate", "(JJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_STORE_INVOKE = JniMethod("cacheStoreInvoke", "(JJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_STORE_DESTROY = JniMethod("cacheStoreDestroy", "(JJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_STORE_SESSION_CREATE = JniMethod("cacheStoreSessionCreate", "(JJ)J", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_ENTRY_FILTER_CREATE = JniMethod("cacheEntryFilterCreate", "(JJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_ENTRY_FILTER_APPLY = JniMethod("cacheEntryFilterApply", "(JJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_ENTRY_FILTER_DESTROY = JniMethod("cacheEntryFilterDestroy", "(JJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_CACHE_INVOKE = JniMethod("cacheInvoke", "(JJJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_TASK_MAP = JniMethod("computeTaskMap", "(JJJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_TASK_JOB_RESULT = JniMethod("computeTaskJobResult", "(JJJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_TASK_REDUCE = JniMethod("computeTaskReduce", "(JJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_TASK_COMPLETE = JniMethod("computeTaskComplete", "(JJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_JOB_SERIALIZE = JniMethod("computeJobSerialize", "(JJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_JOB_CREATE = JniMethod("computeJobCreate", "(JJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_JOB_EXECUTE = JniMethod("computeJobExecute", "(JJIJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_JOB_DESTROY = JniMethod("computeJobDestroy", "(JJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_COMPUTE_JOB_CANCEL = JniMethod("computeJobCancel", "(JJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_CONTINUOUS_QUERY_LSNR_APPLY = JniMethod("continuousQueryListenerApply", "(JJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CONTINUOUS_QUERY_FILTER_CREATE = JniMethod("continuousQueryFilterCreate", "(JJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CONTINUOUS_QUERY_FILTER_EVAL = JniMethod("continuousQueryFilterApply", "(JJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_CONTINUOUS_QUERY_FILTER_RELEASE = JniMethod("continuousQueryFilterRelease", "(JJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_DATA_STREAMER_TOPOLOGY_UPDATE = JniMethod("dataStreamerTopologyUpdate", "(JJJI)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_DATA_STREAMER_STREAM_RECEIVER_INVOKE = JniMethod("dataStreamerStreamReceiverInvoke", "(JJLorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;JZ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_BYTE_RES = JniMethod("futureByteResult", "(JJI)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_BOOL_RES = JniMethod("futureBoolResult", "(JJI)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_SHORT_RES = JniMethod("futureShortResult", "(JJI)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_CHAR_RES = JniMethod("futureCharResult", "(JJI)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_INT_RES = JniMethod("futureIntResult", "(JJI)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_FLOAT_RES = JniMethod("futureFloatResult", "(JJF)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_LONG_RES = JniMethod("futureLongResult", "(JJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_DOUBLE_RES = JniMethod("futureDoubleResult", "(JJD)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_OBJ_RES = JniMethod("futureObjectResult", "(JJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_NULL_RES = JniMethod("futureNullResult", "(JJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_FUTURE_ERR = JniMethod("futureError", "(JJJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_LIFECYCLE_EVENT = JniMethod("lifecycleEvent", "(JJI)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_MESSAGING_FILTER_CREATE = JniMethod("messagingFilterCreate", "(JJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_MESSAGING_FILTER_APPLY = JniMethod("messagingFilterApply", "(JJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_MESSAGING_FILTER_DESTROY = JniMethod("messagingFilterDestroy", "(JJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_EVENT_FILTER_CREATE = JniMethod("eventFilterCreate", "(JJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_EVENT_FILTER_APPLY = JniMethod("eventFilterApply", "(JJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_EVENT_FILTER_DESTROY = JniMethod("eventFilterDestroy", "(JJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_SERVICE_INIT = JniMethod("serviceInit", "(JJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_SERVICE_EXECUTE = JniMethod("serviceExecute", "(JJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_SERVICE_CANCEL = JniMethod("serviceCancel", "(JJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_SERVICE_INVOKE_METHOD = JniMethod("serviceInvokeMethod", "(JJJJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_CLUSTER_NODE_FILTER_APPLY = JniMethod("clusterNodeFilterApply", "(JJ)I", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_NODE_INFO = JniMethod("nodeInfo", "(JJ)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_MEMORY_REALLOCATE = JniMethod("memoryReallocate", "(JJI)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_ON_START = JniMethod("onStart", "(JLjava/lang/Object;J)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_ON_STOP = JniMethod("onStop", "(J)V", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_EXTENSION_CALLBACK_IN_LONG_OUT_LONG = JniMethod("extensionCallbackInLongOutLong", "(JIJ)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_EXTENSION_CALLBACK_IN_LONG_LONG_OUT_LONG = JniMethod("extensionCallbackInLongLongOutLong", "(JIJJ)J", true);
-
- JniMethod M_PLATFORM_CALLBACK_UTILS_ON_CLIENT_DISCONNECTED = JniMethod("onClientDisconnected", "(J)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_ON_CLIENT_RECONNECTED = JniMethod("onClientReconnected", "(JZ)V", true);
-
JniMethod M_PLATFORM_CALLBACK_UTILS_LOGGER_LOG = JniMethod("loggerLog", "(JILjava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V", true);
JniMethod M_PLATFORM_CALLBACK_UTILS_LOGGER_IS_LEVEL_ENABLED = JniMethod("loggerIsLevelEnabled", "(JI)Z", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_AFFINITY_FUNCTION_INIT = JniMethod("affinityFunctionInit", "(JJLorg/apache/ignite/internal/processors/platform/PlatformTargetProxy;)J", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_AFFINITY_FUNCTION_PARTITION = JniMethod("affinityFunctionPartition", "(JJJ)I", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_AFFINITY_FUNCTION_ASSIGN_PARTITIONS = JniMethod("affinityFunctionAssignPartitions", "(JJJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_AFFINITY_FUNCTION_REMOVE_NODE = JniMethod("affinityFunctionRemoveNode", "(JJJ)V", true);
- JniMethod M_PLATFORM_CALLBACK_UTILS_AFFINITY_FUNCTION_DESTROY = JniMethod("affinityFunctionDestroy", "(JJ)V", true);
-
JniMethod M_PLATFORM_CALLBACK_UTILS_CONSOLE_WRITE = JniMethod("consoleWrite", "(Ljava/lang/String;Z)V", true);
JniMethod M_PLATFORM_CALLBACK_UTILS_IN_LONG_OUT_LONG = JniMethod("inLongOutLong", "(JIJ)J", true);
@@ -353,7 +250,7 @@ namespace ignite
JniMethod M_PLATFORM_UTILS_GET_FULL_STACK_TRACE = JniMethod("getFullStackTrace", "(Ljava/lang/Throwable;)Ljava/lang/String;", true);
const char* C_PLATFORM_IGNITION = "org/apache/ignite/internal/processors/platform/PlatformIgnition";
- JniMethod M_PLATFORM_IGNITION_START = JniMethod("start", "(Ljava/lang/String;Ljava/lang/String;IJJ)Lorg/apache/ignite/internal/processors/platform/PlatformProcessor;", true);
+ JniMethod M_PLATFORM_IGNITION_START = JniMethod("start", "(Ljava/lang/String;Ljava/lang/String;IJJ)V", true);
JniMethod M_PLATFORM_IGNITION_INSTANCE = JniMethod("instance", "(Ljava/lang/String;)Lorg/apache/ignite/internal/processors/platform/PlatformProcessor;", true);
JniMethod M_PLATFORM_IGNITION_ENVIRONMENT_POINTER = JniMethod("environmentPointer", "(Ljava/lang/String;)J", true);
JniMethod M_PLATFORM_IGNITION_STOP = JniMethod("stop", "(Ljava/lang/String;Z)Z", true);
@@ -554,32 +451,6 @@ namespace ignite
c_PlatformProcessor = FindClass(env, C_PLATFORM_PROCESSOR);
m_PlatformProcessor_releaseStart = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_RELEASE_START);
- m_PlatformProcessor_cache = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_CACHE);
- m_PlatformProcessor_createCache = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_CREATE_CACHE);
- m_PlatformProcessor_getOrCreateCache = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_GET_OR_CREATE_CACHE);
- m_PlatformProcessor_createCacheFromConfig = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_CREATE_CACHE_FROM_CONFIG);
- m_PlatformProcessor_getOrCreateCacheFromConfig = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_GET_OR_CREATE_CACHE_FROM_CONFIG);
- m_PlatformProcessor_createNearCache = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_CREATE_NEAR_CACHE);
- m_PlatformProcessor_getOrCreateNearCache = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_GET_OR_CREATE_NEAR_CACHE);
- m_PlatformProcessor_destroyCache = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_DESTROY_CACHE);
- m_PlatformProcessor_affinity = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_AFFINITY);
- m_PlatformProcessor_dataStreamer = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_DATA_STREAMER);
- m_PlatformProcessor_transactions = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_TRANSACTIONS);
- m_PlatformProcessor_projection = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_PROJECTION);
- m_PlatformProcessor_compute = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_COMPUTE);
- m_PlatformProcessor_message = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_MESSAGE);
- m_PlatformProcessor_events = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_EVENTS);
- m_PlatformProcessor_services = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_SERVICES);
- m_PlatformProcessor_extensions = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_EXTENSIONS);
- m_PlatformProcessor_extension = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_EXTENSION);
- m_PlatformProcessor_atomicLong = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_ATOMIC_LONG);
- m_PlatformProcessor_atomicSequence = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_ATOMIC_SEQUENCE);
- m_PlatformProcessor_atomicReference = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_ATOMIC_REFERENCE);
- m_PlatformProcessor_getIgniteConfiguration = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_GET_IGNITE_CONFIGURATION);
- m_PlatformProcessor_getCacheNames = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_GET_CACHE_NAMES);
- m_PlatformProcessor_loggerIsLevelEnabled = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_LOGGER_IS_LEVEL_ENABLED);
- m_PlatformProcessor_loggerLog = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_LOGGER_LOG);
- m_PlatformProcessor_binaryProcessor = FindMethod(env, c_PlatformProcessor, M_PLATFORM_PROCESSOR_BINARY_PROCESSOR);
c_PlatformTarget = FindClass(env, C_PLATFORM_TARGET);
m_PlatformTarget_inLongOutLong = FindMethod(env, c_PlatformTarget, M_PLATFORM_TARGET_IN_LONG_OUT_LONG);
@@ -871,18 +742,18 @@ namespace ignite
}
}
- jobject JniContext::IgnitionStart(char* cfgPath, char* name, int factoryId, long long dataPtr) {
+ void JniContext::IgnitionStart(char* cfgPath, char* name, int factoryId, long long dataPtr) {
return IgnitionStart(cfgPath, name, factoryId, dataPtr, NULL);
}
- jobject JniContext::IgnitionStart(char* cfgPath, char* name, int factoryId, long long dataPtr, JniErrorInfo* errInfo)
+ void JniContext::IgnitionStart(char* cfgPath, char* name, int factoryId, long long dataPtr, JniErrorInfo* errInfo)
{
JNIEnv* env = Attach();
jstring cfgPath0 = env->NewStringUTF(cfgPath);
jstring name0 = env->NewStringUTF(name);
- jobject interop = env->CallStaticObjectMethod(
+ env->CallStaticVoidMethod(
jvm->GetMembers().c_PlatformIgnition,
jvm->GetMembers().m_PlatformIgnition_start,
cfgPath0,
@@ -893,30 +764,8 @@ namespace ignite
);
ExceptionCheck(env, errInfo);
-
- return LocalToGlobal(env, interop);
- }
-
-
- jobject JniContext::IgnitionInstance(char* name)
- {
- return IgnitionInstance(name, NULL);
- }
-
- jobject JniContext::IgnitionInstance(char* name, JniErrorInfo* errInfo)
- {
- JNIEnv* env = Attach();
-
- jstring name0 = env->NewStringUTF(name);
-
- jobject interop = env->CallStaticObjectMethod(jvm->GetMembers().c_PlatformIgnition,
- jvm->GetMembers().m_PlatformIgnition_instance, name0);
-
- ExceptionCheck(env, errInfo);
-
- return LocalToGlobal(env, interop);
}
-
+
long long JniContext::IgnitionEnvironmentPointer(char* name)
{
return IgnitionEnvironmentPointer(name, NULL);
@@ -970,318 +819,6 @@ namespace ignite
ExceptionCheck(env, errInfo);
}
- void JniContext::ProcessorReleaseStart(jobject obj) {
- JNIEnv* env = Attach();
-
- env->CallVoidMethod(obj, jvm->GetMembers().m_PlatformProcessor_releaseStart);
-
- ExceptionCheck(env);
- }
-
- jobject JniContext::ProcessorProjection(jobject obj, JniErrorInfo* errInfo) {
- JNIEnv* env = Attach();
-
- jobject prj = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_projection);
-
- ExceptionCheck(env, errInfo);
-
- return LocalToGlobal(env, prj);
- }
-
- jobject JniContext::ProcessorCache0(jobject obj, const char* name, jmethodID mthd, JniErrorInfo* errInfo)
- {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- jobject cache = env->CallObjectMethod(obj, mthd, name0);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env, errInfo);
-
- return LocalToGlobal(env, cache);
- }
-
- jobject JniContext::ProcessorCacheFromConfig0(jobject obj, long long memPtr, jmethodID mthd, JniErrorInfo* errInfo)
- {
- JNIEnv* env = Attach();
-
- jobject cache = env->CallObjectMethod(obj, mthd, memPtr);
-
- ExceptionCheck(env, errInfo);
-
- return LocalToGlobal(env, cache);
- }
-
- jobject JniContext::ProcessorCache(jobject obj, const char* name) {
- return ProcessorCache(obj, name, NULL);
- }
-
- jobject JniContext::ProcessorCache(jobject obj, const char* name, JniErrorInfo* errInfo) {
- return ProcessorCache0(obj, name, jvm->GetMembers().m_PlatformProcessor_cache, errInfo);
- }
-
- jobject JniContext::ProcessorCreateCache(jobject obj, const char* name) {
- return ProcessorCreateCache(obj, name, NULL);
- }
-
- jobject JniContext::ProcessorCreateCache(jobject obj, const char* name, JniErrorInfo* errInfo)
- {
- return ProcessorCache0(obj, name, jvm->GetMembers().m_PlatformProcessor_createCache, errInfo);
- }
-
- jobject JniContext::ProcessorGetOrCreateCache(jobject obj, const char* name) {
- return ProcessorGetOrCreateCache(obj, name, NULL);
- }
-
- jobject JniContext::ProcessorGetOrCreateCache(jobject obj, const char* name, JniErrorInfo* errInfo)
- {
- return ProcessorCache0(obj, name, jvm->GetMembers().m_PlatformProcessor_getOrCreateCache, errInfo);
- }
-
- void JniContext::ProcessorDestroyCache(jobject obj, const char* name) {
- ProcessorDestroyCache(obj, name, NULL);
- }
-
- void JniContext::ProcessorDestroyCache(jobject obj, const char* name, JniErrorInfo* errInfo)
- {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- env->CallVoidMethod(obj, jvm->GetMembers().m_PlatformProcessor_destroyCache, name0);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env, errInfo);
- }
-
- jobject JniContext::ProcessorCreateCacheFromConfig(jobject obj, long long memPtr) {
- return ProcessorCreateCacheFromConfig(obj, memPtr, NULL);
- }
-
- jobject JniContext::ProcessorCreateCacheFromConfig(jobject obj, long long memPtr, JniErrorInfo* errInfo)
- {
- return ProcessorCacheFromConfig0(obj, memPtr, jvm->GetMembers().m_PlatformProcessor_createCacheFromConfig, errInfo);
- }
-
- jobject JniContext::ProcessorGetOrCreateCacheFromConfig(jobject obj, long long memPtr) {
- return ProcessorGetOrCreateCacheFromConfig(obj, memPtr, NULL);
- }
-
- jobject JniContext::ProcessorGetOrCreateCacheFromConfig(jobject obj, long long memPtr, JniErrorInfo* errInfo)
- {
- return ProcessorCacheFromConfig0(obj, memPtr, jvm->GetMembers().m_PlatformProcessor_getOrCreateCacheFromConfig, errInfo);
- }
-
- jobject JniContext::ProcessorCreateNearCache(jobject obj, const char* name, long long memPtr)
- {
- return ProcessorGetOrCreateNearCache0(obj, name, memPtr, jvm->GetMembers().m_PlatformProcessor_createNearCache);
- }
-
- jobject JniContext::ProcessorGetOrCreateNearCache(jobject obj, const char* name, long long memPtr)
- {
- return ProcessorGetOrCreateNearCache0(obj, name, memPtr, jvm->GetMembers().m_PlatformProcessor_getOrCreateNearCache);
- }
-
- jobject JniContext::ProcessorGetOrCreateNearCache0(jobject obj, const char* name, long long memPtr, jmethodID methodID)
- {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- jobject cache = env->CallObjectMethod(obj, methodID, name0, memPtr);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, cache);
- }
-
- jobject JniContext::ProcessorAffinity(jobject obj, const char* name) {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- jobject aff = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_affinity, name0);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, aff);
- }
-
- jobject JniContext::ProcessorDataStreamer(jobject obj, const char* name, bool keepPortable) {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- jobject ldr = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_dataStreamer, name0,
- keepPortable);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, ldr);
- }
-
- jobject JniContext::ProcessorTransactions(jobject obj, JniErrorInfo* errInfo) {
- JNIEnv* env = Attach();
-
- jobject tx = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_transactions);
-
- ExceptionCheck(env, errInfo);
-
- return LocalToGlobal(env, tx);
- }
-
- jobject JniContext::ProcessorCompute(jobject obj, jobject prj) {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_compute, prj);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorCompute(jobject obj, jobject prj, JniErrorInfo* errInfo) {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_compute, prj);
-
- ExceptionCheck(env, errInfo);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorMessage(jobject obj, jobject prj) {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_message, prj);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorEvents(jobject obj, jobject prj) {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_events, prj);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorServices(jobject obj, jobject prj) {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_services, prj);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorExtensions(jobject obj)
- {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_extensions);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorExtension(jobject obj, int id)
- {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_extension, id);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorAtomicLong(jobject obj, char* name, long long initVal, bool create)
- {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_atomicLong, name0, initVal, create);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorAtomicSequence(jobject obj, char* name, long long initVal, bool create)
- {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_atomicSequence, name0, initVal, create);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- jobject JniContext::ProcessorAtomicReference(jobject obj, char* name, long long memPtr, bool create)
- {
- JNIEnv* env = Attach();
-
- jstring name0 = name != NULL ? env->NewStringUTF(name) : NULL;
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_atomicReference, name0, memPtr, create);
-
- if (name0)
- env->DeleteLocalRef(name0);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
- void JniContext::ProcessorGetIgniteConfiguration(jobject obj, long long memPtr)
- {
- JNIEnv* env = Attach();
-
- env->CallVoidMethod(obj, jvm->GetMembers().m_PlatformProcessor_getIgniteConfiguration, memPtr);
-
- ExceptionCheck(env);
- }
-
- void JniContext::ProcessorGetCacheNames(jobject obj, long long memPtr)
- {
- JNIEnv* env = Attach();
-
- env->CallVoidMethod(obj, jvm->GetMembers().m_PlatformProcessor_getCacheNames, memPtr);
-
- ExceptionCheck(env);
- }
-
long long JniContext::TargetInLongOutLong(jobject obj, int opType, long long val, JniErrorInfo* err) {
JNIEnv* env = Attach();
@@ -1292,51 +829,6 @@ namespace ignite
return res;
}
- bool JniContext::ProcessorLoggerIsLevelEnabled(jobject obj, int level)
- {
- JNIEnv* env = Attach();
-
- jboolean res = env->CallBooleanMethod(obj, jvm->GetMembers().m_PlatformProcessor_loggerIsLevelEnabled, level);
-
- ExceptionCheck(env);
-
- return res != 0;
- }
-
- void JniContext::ProcessorLoggerLog(jobject obj, int level, char* message, char* category, char* errorInfo)
- {
- JNIEnv* env = Attach();
-
- jstring message0 = message != NULL ? env->NewStringUTF(message) : NULL;
- jstring category0 = category != NULL ? env->NewStringUTF(category) : NULL;
- jstring errorInfo0 = errorInfo != NULL ? env->NewStringUTF(errorInfo) : NULL;
-
-
- env->CallVoidMethod(obj, jvm->GetMembers().m_PlatformProcessor_loggerLog, level, message0, category0, errorInfo0);
-
- if (message0)
- env->DeleteLocalRef(message0);
-
- if (category0)
- env->DeleteLocalRef(category0);
-
- if (errorInfo0)
- env->DeleteLocalRef(errorInfo0);
-
- ExceptionCheck(env);
- }
-
- jobject JniContext::ProcessorBinaryProcessor(jobject obj)
- {
- JNIEnv* env = Attach();
-
- jobject res = env->CallObjectMethod(obj, jvm->GetMembers().m_PlatformProcessor_binaryProcessor);
-
- ExceptionCheck(env);
-
- return LocalToGlobal(env, res);
- }
-
long long JniContext::TargetInStreamOutLong(jobject obj, int opType, long long memPtr, JniErrorInfo* err) {
JNIEnv* env = Attach();
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Ignition.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Ignition.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Ignition.cs
index c5d056d..44ebef3 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Ignition.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Ignition.cs
@@ -253,7 +253,9 @@ namespace Apache.Ignite.Core
var javaLogger = log as JavaLogger;
if (javaLogger != null)
- javaLogger.SetProcessor(interopProc);
+ {
+ javaLogger.SetIgnite(node);
+ }
// 6. On-start callback (notify lifecycle components).
node.OnStart();
@@ -291,10 +293,14 @@ namespace Apache.Ignite.Core
}
finally
{
+ var ignite = _startup.Ignite;
+
_startup = null;
- if (interopProc != null)
- UU.ProcessorReleaseStart(interopProc);
+ if (ignite != null)
+ {
+ ignite.ProcessorReleaseStart();
+ }
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
index b1bf5eb..e6b2408 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
@@ -1166,7 +1166,7 @@ namespace Apache.Ignite.Core.Impl.Cache
{
if (loc)
{
- var target = DoOutOpObject((int) CacheOp.LocIterator, w => w.WriteInt(peekModes));
+ var target = DoOutOpObject((int) CacheOp.LocIterator, (IBinaryStream s) => s.WriteInt(peekModes));
return new CacheEnumerator<TK, TV>(target, Marshaller, _flagKeepBinary);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
index 6e07b78..30afe57 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
@@ -135,6 +135,18 @@ namespace Apache.Ignite.Core.Impl.Cluster
/** */
private const int OpGetPersistentStoreMetrics = 30;
+ /** */
+ private const int OpGetCompute = 31;
+
+ /** */
+ private const int OpGetMessaging = 32;
+
+ /** */
+ private const int OpGetEvents = 33;
+
+ /** */
+ private const int OpGetServices = 34;
+
/** Initial Ignite instance. */
private readonly Ignite _ignite;
@@ -147,17 +159,14 @@ namespace Apache.Ignite.Core.Impl.Cluster
/** Nodes for the given topology version. */
private volatile IList<IClusterNode> _nodes;
- /** Processor. */
- private readonly IUnmanagedTarget _proc;
-
/** Compute. */
- private readonly Lazy<Compute> _comp;
+ private readonly Lazy<ICompute> _comp;
/** Messaging. */
- private readonly Lazy<Messaging> _msg;
+ private readonly Lazy<IMessaging> _msg;
/** Events. */
- private readonly Lazy<Events> _events;
+ private readonly Lazy<IEvents> _events;
/** Services. */
private readonly Lazy<IServices> _services;
@@ -165,29 +174,20 @@ namespace Apache.Ignite.Core.Impl.Cluster
/// <summary>
/// Constructor.
/// </summary>
- /// <param name="proc">Processor.</param>
/// <param name="target">Target.</param>
- /// <param name="marsh">Marshaller.</param>
/// <param name="ignite">Grid.</param>
/// <param name="pred">Predicate.</param>
[SuppressMessage("Microsoft.Performance", "CA1805:DoNotInitializeUnnecessarily")]
- public ClusterGroupImpl(IUnmanagedTarget proc, IUnmanagedTarget target, Marshaller marsh,
- Ignite ignite, Func<IClusterNode, bool> pred)
- : base(target, marsh)
+ public ClusterGroupImpl(IUnmanagedTarget target, Ignite ignite, Func<IClusterNode, bool> pred)
+ : base(target, ignite.Marshaller)
{
- _proc = proc;
_ignite = ignite;
_pred = pred;
- _comp = new Lazy<Compute>(() =>
- new Compute(new ComputeImpl(UU.ProcessorCompute(proc, target), marsh, this, false)));
-
- _msg = new Lazy<Messaging>(() => new Messaging(UU.ProcessorMessage(proc, target), marsh, this));
-
- _events = new Lazy<Events>(() => new Events(UU.ProcessorEvents(proc, target), marsh, this));
-
- _services = new Lazy<IServices>(() =>
- new Services(UU.ProcessorServices(proc, target), marsh, this, false, false));
+ _comp = new Lazy<ICompute>(() => CreateCompute());
+ _msg = new Lazy<IMessaging>(() => CreateMessaging());
+ _events = new Lazy<IEvents>(() => CreateEvents());
+ _services = new Lazy<IServices>(() => CreateServices());
}
/** <inheritDoc /> */
@@ -202,6 +202,14 @@ namespace Apache.Ignite.Core.Impl.Cluster
return _comp.Value;
}
+ /// <summary>
+ /// Creates the compute.
+ /// </summary>
+ private ICompute CreateCompute()
+ {
+ return new Compute(new ComputeImpl(DoOutOpObject(OpGetCompute), Marshaller, this, false));
+ }
+
/** <inheritDoc /> */
public IClusterGroup ForNodes(IEnumerable<IClusterNode> nodes)
{
@@ -257,7 +265,7 @@ namespace Apache.Ignite.Core.Impl.Cluster
{
var newPred = _pred == null ? p : node => _pred(node) && p(node);
- return new ClusterGroupImpl(_proc, Target, Marshaller, _ignite, newPred);
+ return new ClusterGroupImpl(Target, _ignite, newPred);
}
/** <inheritDoc /> */
@@ -413,12 +421,28 @@ namespace Apache.Ignite.Core.Impl.Cluster
return _msg.Value;
}
+ /// <summary>
+ /// Creates the messaging.
+ /// </summary>
+ private IMessaging CreateMessaging()
+ {
+ return new Messaging(DoOutOpObject(OpGetMessaging), Marshaller, this);
+ }
+
/** <inheritDoc /> */
public IEvents GetEvents()
{
return _events.Value;
}
+ /// <summary>
+ /// Creates the events.
+ /// </summary>
+ private IEvents CreateEvents()
+ {
+ return new Events(DoOutOpObject(OpGetEvents), Marshaller, this);
+ }
+
/** <inheritDoc /> */
public IServices GetServices()
{
@@ -426,6 +450,14 @@ namespace Apache.Ignite.Core.Impl.Cluster
}
/// <summary>
+ /// Creates the services.
+ /// </summary>
+ private IServices CreateServices()
+ {
+ return new Services(DoOutOpObject(OpGetServices), Marshaller, this, false, false);
+ }
+
+ /// <summary>
/// Pings a remote node.
/// </summary>
/// <param name="nodeId">ID of a node to ping.</param>
@@ -635,7 +667,7 @@ namespace Apache.Ignite.Core.Impl.Cluster
/// <returns>New cluster group.</returns>
private IClusterGroup GetClusterGroup(IUnmanagedTarget prj)
{
- return new ClusterGroupImpl(_proc, prj, Marshaller, _ignite, _pred);
+ return new ClusterGroupImpl(prj, _ignite, _pred);
}
/// <summary>
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Compute/ComputeImpl.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Compute/ComputeImpl.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Compute/ComputeImpl.cs
index 7a028cd..cace7b2 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Compute/ComputeImpl.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Compute/ComputeImpl.cs
@@ -186,10 +186,10 @@ namespace Apache.Ignite.Core.Impl.Compute
long ptr = Marshaller.Ignite.HandleRegistry.Allocate(holder);
- var futTarget = DoOutOpObject(OpExecNative, w =>
+ var futTarget = DoOutOpObject(OpExecNative, (IBinaryStream s) =>
{
- w.WriteLong(ptr);
- w.WriteLong(_prj.TopologyVersion);
+ s.WriteLong(ptr);
+ s.WriteLong(_prj.TopologyVersion);
});
var future = holder.Future;
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/DataStreamerImpl.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/DataStreamerImpl.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/DataStreamerImpl.cs
index b9e3030..96e58d4 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/DataStreamerImpl.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/DataStreamerImpl.cs
@@ -547,8 +547,7 @@ namespace Apache.Ignite.Core.Impl.Datastream
return result;
}
- return new DataStreamerImpl<TK1, TV1>(UU.ProcessorDataStreamer(Marshaller.Ignite.InteropProcessor,
- _cacheName, true), Marshaller, _cacheName, true);
+ return Marshaller.Ignite.GetDataStreamer<TK1, TV1>(_cacheName, true);
}
/** <inheritDoc /> */
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/StreamReceiverHolder.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/StreamReceiverHolder.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/StreamReceiverHolder.cs
index 953ddb6..c91334d 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/StreamReceiverHolder.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Datastream/StreamReceiverHolder.cs
@@ -138,7 +138,7 @@ namespace Apache.Ignite.Core.Impl.Datastream
for (var i = 0; i < size; i++)
entries.Add(new CacheEntry<TK, TV>(reader.ReadObject<TK>(), reader.ReadObject<TV>()));
- receiver.Receive(grid.Cache<TK, TV>(cache, keepBinary), entries);
+ receiver.Receive(grid.GetCache<TK, TV>(cache, keepBinary), entries);
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
index 205f6e2..715776e 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
@@ -42,6 +42,7 @@ namespace Apache.Ignite.Core.Impl
using Apache.Ignite.Core.Impl.Plugin;
using Apache.Ignite.Core.Impl.Transactions;
using Apache.Ignite.Core.Impl.Unmanaged;
+ using Apache.Ignite.Core.Interop;
using Apache.Ignite.Core.Lifecycle;
using Apache.Ignite.Core.Log;
using Apache.Ignite.Core.Messaging;
@@ -53,8 +54,37 @@ namespace Apache.Ignite.Core.Impl
/// <summary>
/// Native Ignite wrapper.
/// </summary>
- internal class Ignite : IIgnite, ICluster
+ internal class Ignite : PlatformTarget, IIgnite, ICluster
{
+ /// <summary>
+ /// Operation codes for PlatformProcessorImpl calls.
+ /// </summary>
+ private enum Op
+ {
+ GetCache = 1,
+ CreateCache = 2,
+ GetOrCreateCache = 3,
+ CreateCacheFromConfig = 4,
+ GetOrCreateCacheFromConfig = 5,
+ DestroyCache = 6,
+ GetAffinity = 7,
+ GetDataStreamer = 8,
+ GetTransactions = 9,
+ GetClusterGroup = 10,
+ GetExtension = 11,
+ GetAtomicLong = 12,
+ GetAtomicReference = 13,
+ GetAtomicSequence = 14,
+ GetIgniteConfiguration = 15,
+ GetCacheNames = 16,
+ CreateNearCache = 17,
+ GetOrCreateNearCache = 18,
+ LoggerIsLevelEnabled = 19,
+ LoggerLog = 20,
+ GetBinaryProcessor = 21,
+ ReleaseStart = 22
+ }
+
/** */
private readonly IgniteConfiguration _cfg;
@@ -109,7 +139,7 @@ namespace Apache.Ignite.Core.Impl
/// <param name="lifecycleHandlers">Lifecycle beans.</param>
/// <param name="cbs">Callbacks.</param>
public Ignite(IgniteConfiguration cfg, string name, IUnmanagedTarget proc, Marshaller marsh,
- IList<LifecycleHandlerHolder> lifecycleHandlers, UnmanagedCallbacks cbs)
+ IList<LifecycleHandlerHolder> lifecycleHandlers, UnmanagedCallbacks cbs) : base(proc, marsh)
{
Debug.Assert(cfg != null);
Debug.Assert(proc != null);
@@ -126,17 +156,17 @@ namespace Apache.Ignite.Core.Impl
marsh.Ignite = this;
- _prj = new ClusterGroupImpl(proc, UU.ProcessorProjection(proc), marsh, this, null);
+ _prj = new ClusterGroupImpl(DoOutOpObject((int) Op.GetClusterGroup), this, null);
_binary = new Binary.Binary(marsh);
- _binaryProc = new BinaryProcessor(UU.ProcessorBinaryProcessor(proc), marsh);
+ _binaryProc = new BinaryProcessor(DoOutOpObject((int) Op.GetBinaryProcessor), marsh);
cbs.Initialize(this);
// Grid is not completely started here, can't initialize interop transactions right away.
_transactions = new Lazy<TransactionsImpl>(
- () => new TransactionsImpl(UU.ProcessorTransactions(proc), marsh, GetLocalNode().Id));
+ () => new TransactionsImpl(DoOutOpObject((int) Op.GetTransactions), marsh, GetLocalNode().Id));
// Set reconnected task to completed state for convenience.
_clientReconnectTaskCompletionSource.SetResult(false);
@@ -207,7 +237,7 @@ namespace Apache.Ignite.Core.Impl
/** <inheritdoc /> */
public IClusterGroup ForNodes(IEnumerable<IClusterNode> nodes)
{
- return ((IClusterGroup) _prj).ForNodes(nodes);
+ return _prj.ForNodes(nodes);
}
/** <inheritdoc /> */
@@ -219,12 +249,6 @@ namespace Apache.Ignite.Core.Impl
/** <inheritdoc /> */
public IClusterGroup ForNodeIds(IEnumerable<Guid> ids)
{
- return ((IClusterGroup) _prj).ForNodeIds(ids);
- }
-
- /** <inheritdoc /> */
- public IClusterGroup ForNodeIds(ICollection<Guid> ids)
- {
return _prj.ForNodeIds(ids);
}
@@ -389,7 +413,8 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNull(name, "name");
- return Cache<TK, TV>(UU.ProcessorCache(_proc, name));
+
+ return GetCache<TK, TV>(DoOutOpObject((int) Op.GetCache, w => w.WriteString(name)));
}
/** <inheritdoc /> */
@@ -397,7 +422,7 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNull(name, "name");
- return Cache<TK, TV>(UU.ProcessorGetOrCreateCache(_proc, name));
+ return GetCache<TK, TV>(DoOutOpObject((int) Op.GetOrCreateCache, w => w.WriteString(name)));
}
/** <inheritdoc /> */
@@ -407,31 +432,10 @@ namespace Apache.Ignite.Core.Impl
}
/** <inheritdoc /> */
- public ICache<TK, TV> GetOrCreateCache<TK, TV>(CacheConfiguration configuration,
+ public ICache<TK, TV> GetOrCreateCache<TK, TV>(CacheConfiguration configuration,
NearCacheConfiguration nearConfiguration)
{
- IgniteArgumentCheck.NotNull(configuration, "configuration");
- IgniteArgumentCheck.NotNull(configuration.Name, "CacheConfiguration.Name");
- configuration.Validate(Logger);
-
- using (var stream = IgniteManager.Memory.Allocate().GetStream())
- {
- var writer = BinaryUtils.Marshaller.StartMarshal(stream);
-
- configuration.Write(writer);
-
- if (nearConfiguration != null)
- {
- writer.WriteBoolean(true);
- nearConfiguration.Write(writer);
- }
- else
- writer.WriteBoolean(false);
-
- stream.SynchronizeOutput();
-
- return Cache<TK, TV>(UU.ProcessorGetOrCreateCache(_proc, stream.MemoryPointer));
- }
+ return GetOrCreateCache<TK, TV>(configuration, nearConfiguration, Op.GetOrCreateCacheFromConfig);
}
/** <inheritdoc /> */
@@ -439,7 +443,9 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNull(name, "name");
- return Cache<TK, TV>(UU.ProcessorCreateCache(_proc, name));
+ var cacheTarget = DoOutOpObject((int) Op.CreateCache, w => w.WriteString(name));
+
+ return GetCache<TK, TV>(cacheTarget);
}
/** <inheritdoc /> */
@@ -452,29 +458,37 @@ namespace Apache.Ignite.Core.Impl
public ICache<TK, TV> CreateCache<TK, TV>(CacheConfiguration configuration,
NearCacheConfiguration nearConfiguration)
{
+ return GetOrCreateCache<TK, TV>(configuration, nearConfiguration, Op.CreateCacheFromConfig);
+ }
+
+ /// <summary>
+ /// Gets or creates the cache.
+ /// </summary>
+ private ICache<TK, TV> GetOrCreateCache<TK, TV>(CacheConfiguration configuration,
+ NearCacheConfiguration nearConfiguration, Op op)
+ {
IgniteArgumentCheck.NotNull(configuration, "configuration");
IgniteArgumentCheck.NotNull(configuration.Name, "CacheConfiguration.Name");
configuration.Validate(Logger);
- using (var stream = IgniteManager.Memory.Allocate().GetStream())
+ var cacheTarget = DoOutOpObject((int) op, s =>
{
- // Use system marshaller: full footers, always unregistered mode.
- var writer = BinaryUtils.Marshaller.StartMarshal(stream);
+ var w = BinaryUtils.Marshaller.StartMarshal(s);
- configuration.Write(writer);
+ configuration.Write(w);
if (nearConfiguration != null)
{
- writer.WriteBoolean(true);
- nearConfiguration.Write(writer);
+ w.WriteBoolean(true);
+ nearConfiguration.Write(w);
}
else
- writer.WriteBoolean(false);
-
- stream.SynchronizeOutput();
+ {
+ w.WriteBoolean(false);
+ }
+ });
- return Cache<TK, TV>(UU.ProcessorCreateCache(_proc, stream.MemoryPointer));
- }
+ return GetCache<TK, TV>(cacheTarget);
}
/** <inheritdoc /> */
@@ -482,7 +496,7 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNull(name, "name");
- UU.ProcessorDestroyCache(_proc, name);
+ DoOutOp((int) Op.DestroyCache, w => w.WriteString(name));
}
/// <summary>
@@ -493,7 +507,7 @@ namespace Apache.Ignite.Core.Impl
/// <returns>
/// New instance of cache wrapping specified native cache.
/// </returns>
- public ICache<TK, TV> Cache<TK, TV>(IUnmanagedTarget nativeCache, bool keepBinary = false)
+ public ICache<TK, TV> GetCache<TK, TV>(IUnmanagedTarget nativeCache, bool keepBinary = false)
{
return new CacheImpl<TK, TV>(this, nativeCache, _marsh, false, keepBinary, false, false);
}
@@ -541,8 +555,21 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNull(cacheName, "cacheName");
- return new DataStreamerImpl<TK, TV>(UU.ProcessorDataStreamer(_proc, cacheName, false),
- _marsh, cacheName, false);
+ return GetDataStreamer<TK, TV>(cacheName, false);
+ }
+
+ /// <summary>
+ /// Gets the data streamer.
+ /// </summary>
+ internal IDataStreamer<TK, TV> GetDataStreamer<TK, TV>(string cacheName, bool keepBinary)
+ {
+ var streamerTarget = DoOutOpObject((int) Op.GetDataStreamer, w =>
+ {
+ w.WriteString(cacheName);
+ w.WriteBoolean(keepBinary);
+ });
+
+ return new DataStreamerImpl<TK, TV>(streamerTarget, _marsh, cacheName, keepBinary);
}
/** <inheritdoc /> */
@@ -556,11 +583,12 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNull(cacheName, "cacheName");
- return new CacheAffinityImpl(UU.ProcessorAffinity(_proc, cacheName), _marsh, false, this);
+ var aff = DoOutOpObject((int) Op.GetAffinity, w => w.WriteString(cacheName));
+
+ return new CacheAffinityImpl(aff, _marsh, false, this);
}
/** <inheritdoc /> */
-
public ITransactions GetTransactions()
{
return _transactions.Value;
@@ -589,7 +617,12 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNullOrEmpty(name, "name");
- var nativeLong = UU.ProcessorAtomicLong(_proc, name, initialValue, create);
+ var nativeLong = DoOutOpObject((int) Op.GetAtomicLong, w =>
+ {
+ w.WriteString(name);
+ w.WriteLong(initialValue);
+ w.WriteBoolean(create);
+ });
if (nativeLong == null)
return null;
@@ -602,7 +635,12 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNullOrEmpty(name, "name");
- var nativeSeq = UU.ProcessorAtomicSequence(_proc, name, initialValue, create);
+ var nativeSeq = DoOutOpObject((int) Op.GetAtomicSequence, w =>
+ {
+ w.WriteString(name);
+ w.WriteLong(initialValue);
+ w.WriteBoolean(create);
+ });
if (nativeSeq == null)
return null;
@@ -615,81 +653,47 @@ namespace Apache.Ignite.Core.Impl
{
IgniteArgumentCheck.NotNullOrEmpty(name, "name");
- var refTarget = GetAtomicReferenceUnmanaged(name, initialValue, create);
-
- return refTarget == null ? null : new AtomicReference<T>(refTarget, Marshaller, name);
- }
-
- /// <summary>
- /// Gets the unmanaged atomic reference.
- /// </summary>
- /// <param name="name">The name.</param>
- /// <param name="initialValue">The initial value.</param>
- /// <param name="create">Create flag.</param>
- /// <returns>Unmanaged atomic reference, or null.</returns>
- private IUnmanagedTarget GetAtomicReferenceUnmanaged<T>(string name, T initialValue, bool create)
- {
- IgniteArgumentCheck.NotNullOrEmpty(name, "name");
-
- // Do not allocate memory when default is not used.
- if (!create)
- return UU.ProcessorAtomicReference(_proc, name, 0, false);
-
- using (var stream = IgniteManager.Memory.Allocate().GetStream())
+ var refTarget = DoOutOpObject((int) Op.GetAtomicReference, w =>
{
- var writer = Marshaller.StartMarshal(stream);
-
- writer.Write(initialValue);
-
- Marshaller.FinishMarshal(writer);
+ w.WriteString(name);
+ w.WriteObject(initialValue);
+ w.WriteBoolean(create);
+ });
- var memPtr = stream.SynchronizeOutput();
-
- return UU.ProcessorAtomicReference(_proc, name, memPtr, true);
- }
+ return refTarget == null ? null : new AtomicReference<T>(refTarget, Marshaller, name);
}
/** <inheritdoc /> */
public IgniteConfiguration GetConfiguration()
{
- using (var stream = IgniteManager.Memory.Allocate(1024).GetStream())
- {
- UU.ProcessorGetIgniteConfiguration(_proc, stream.MemoryPointer);
-
- stream.SynchronizeInput();
-
- return new IgniteConfiguration(BinaryUtils.Marshaller.StartUnmarshal(stream), _cfg);
- }
+ return DoInOp((int) Op.GetIgniteConfiguration,
+ s => new IgniteConfiguration(BinaryUtils.Marshaller.StartUnmarshal(s), _cfg));
}
/** <inheritdoc /> */
public ICache<TK, TV> CreateNearCache<TK, TV>(string name, NearCacheConfiguration configuration)
{
- return GetOrCreateNearCache0<TK, TV>(name, configuration, UU.ProcessorCreateNearCache);
+ return GetOrCreateNearCache0<TK, TV>(name, configuration, Op.CreateNearCache);
}
/** <inheritdoc /> */
public ICache<TK, TV> GetOrCreateNearCache<TK, TV>(string name, NearCacheConfiguration configuration)
{
- return GetOrCreateNearCache0<TK, TV>(name, configuration, UU.ProcessorGetOrCreateNearCache);
+ return GetOrCreateNearCache0<TK, TV>(name, configuration, Op.GetOrCreateNearCache);
}
/** <inheritdoc /> */
public ICollection<string> GetCacheNames()
{
- using (var stream = IgniteManager.Memory.Allocate(1024).GetStream())
+ return OutStream((int) Op.GetCacheNames, r =>
{
- UU.ProcessorGetCacheNames(_proc, stream.MemoryPointer);
- stream.SynchronizeInput();
-
- var reader = _marsh.StartUnmarshal(stream);
- var res = new string[stream.ReadInt()];
+ var res = new string[r.ReadInt()];
- for (int i = 0; i < res.Length; i++)
- res[i] = reader.ReadString();
+ for (var i = 0; i < res.Length; i++)
+ res[i] = r.ReadString();
- return res;
- }
+ return (ICollection<string>) res;
+ });
}
/** <inheritdoc /> */
@@ -768,20 +772,17 @@ namespace Apache.Ignite.Core.Impl
/// Gets or creates near cache.
/// </summary>
private ICache<TK, TV> GetOrCreateNearCache0<TK, TV>(string name, NearCacheConfiguration configuration,
- Func<IUnmanagedTarget, string, long, IUnmanagedTarget> func)
+ Op op)
{
IgniteArgumentCheck.NotNull(configuration, "configuration");
- using (var stream = IgniteManager.Memory.Allocate().GetStream())
+ var cacheTarget = DoOutOpObject((int) op, w =>
{
- var writer = BinaryUtils.Marshaller.StartMarshal(stream);
+ w.WriteString(name);
+ configuration.Write(w);
+ });
- configuration.Write(writer);
-
- stream.SynchronizeOutput();
-
- return Cache<TK, TV>(func(_proc, name, stream.MemoryPointer));
- }
+ return GetCache<TK, TV>(cacheTarget);
}
/// <summary>
@@ -794,14 +795,6 @@ namespace Apache.Ignite.Core.Impl
}
/// <summary>
- /// Marshaller.
- /// </summary>
- internal Marshaller Marshaller
- {
- get { return _marsh; }
- }
-
- /// <summary>
/// Gets the binary processor.
/// </summary>
internal BinaryProcessor BinaryProcessor
@@ -892,5 +885,43 @@ namespace Apache.Ignite.Core.Impl
{
get { return _pluginProcessor; }
}
+
+ /// <summary>
+ /// Notify processor that it is safe to use.
+ /// </summary>
+ internal void ProcessorReleaseStart()
+ {
+ InLongOutLong((int) Op.ReleaseStart, 0);
+ }
+
+ /// <summary>
+ /// Checks whether log level is enabled in Java logger.
+ /// </summary>
+ internal bool LoggerIsLevelEnabled(LogLevel logLevel)
+ {
+ return InLongOutLong((int) Op.LoggerIsLevelEnabled, (long) logLevel) == True;
+ }
+
+ /// <summary>
+ /// Logs to the Java logger.
+ /// </summary>
+ internal void LoggerLog(LogLevel level, string msg, string category, string err)
+ {
+ InStreamOutLong((int) Op.LoggerLog, w =>
+ {
+ w.WriteInt((int) level);
+ w.WriteString(msg);
+ w.WriteString(category);
+ w.WriteString(err);
+ });
+ }
+
+ /// <summary>
+ /// Gets the platform plugin extension.
+ /// </summary>
+ internal IPlatformTarget GetExtension(int id)
+ {
+ return InStreamOutObject((int) Op.GetExtension, w => w.WriteInt(id));
+ }
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Log/JavaLogger.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Log/JavaLogger.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Log/JavaLogger.cs
index 23e7a37..2e47fe8 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Log/JavaLogger.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Log/JavaLogger.cs
@@ -21,7 +21,6 @@ namespace Apache.Ignite.Core.Impl.Log
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
- using Apache.Ignite.Core.Impl.Unmanaged;
using Apache.Ignite.Core.Log;
/// <summary>
@@ -30,7 +29,7 @@ namespace Apache.Ignite.Core.Impl.Log
internal class JavaLogger : ILogger
{
/** */
- private IUnmanagedTarget _proc;
+ private Ignite _ignite;
/** */
private readonly List<LogLevel> _enabledLevels = new List<LogLevel>(5);
@@ -45,19 +44,19 @@ namespace Apache.Ignite.Core.Impl.Log
/// <summary>
/// Sets the processor.
/// </summary>
- /// <param name="proc">The proc.</param>
- public void SetProcessor(IUnmanagedTarget proc)
+ /// <param name="ignite">The proc.</param>
+ public void SetIgnite(Ignite ignite)
{
- Debug.Assert(proc != null);
+ Debug.Assert(ignite != null);
lock (_syncRoot)
{
- _proc = proc;
+ _ignite = ignite;
// Preload enabled levels.
_enabledLevels.AddRange(
- new[] { LogLevel.Trace, LogLevel.Debug, LogLevel.Info, LogLevel.Warn, LogLevel.Error }
- .Where(x => UnmanagedUtils.ProcessorLoggerIsLevelEnabled(proc, (int)x)));
+ new[] {LogLevel.Trace, LogLevel.Debug, LogLevel.Info, LogLevel.Warn, LogLevel.Error}
+ .Where(x => ignite.LoggerIsLevelEnabled(x)));
foreach (var log in _pendingLogs)
{
@@ -82,7 +81,7 @@ namespace Apache.Ignite.Core.Impl.Log
var msg = args == null ? message : string.Format(formatProvider, message, args);
var err = ex != null ? ex.ToString() : null;
- if (_proc != null)
+ if (_ignite != null)
Log(level, msg, category, err);
else
_pendingLogs.Add(Tuple.Create(level, msg, category, err));
@@ -94,7 +93,7 @@ namespace Apache.Ignite.Core.Impl.Log
{
lock (_syncRoot)
{
- return _proc == null || _enabledLevels.Contains(level);
+ return _ignite == null || _enabledLevels.Contains(level);
}
}
@@ -104,7 +103,9 @@ namespace Apache.Ignite.Core.Impl.Log
private void Log(LogLevel level, string msg, string category, string err)
{
if (IsEnabled(level))
- UnmanagedUtils.ProcessorLoggerLog(_proc, (int)level, msg, category, err);
+ {
+ _ignite.LoggerLog(level, msg, category, err);
+ }
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/PlatformTarget.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/PlatformTarget.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/PlatformTarget.cs
index 8dd8eaf..474af0e 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/PlatformTarget.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/PlatformTarget.cs
@@ -300,7 +300,7 @@ namespace Apache.Ignite.Core.Impl
/// </summary>
/// <param name="type">Operation type.</param>
/// <param name="action">Action to be performed on the stream.</param>
- /// <returns></returns>
+ /// <returns>Resulting object.</returns>
protected IUnmanagedTarget DoOutOpObject(int type, Action<BinaryWriter> action)
{
using (var stream = IgniteManager.Memory.Allocate().GetStream())
@@ -319,6 +319,22 @@ namespace Apache.Ignite.Core.Impl
/// Perform out operation.
/// </summary>
/// <param name="type">Operation type.</param>
+ /// <param name="action">Action to be performed on the stream.</param>
+ /// <returns>Resulting object.</returns>
+ protected IUnmanagedTarget DoOutOpObject(int type, Action<IBinaryStream> action)
+ {
+ using (var stream = IgniteManager.Memory.Allocate().GetStream())
+ {
+ action(stream);
+
+ return UU.TargetInStreamOutObject(_target, type, stream.SynchronizeOutput());
+ }
+ }
+
+ /// <summary>
+ /// Perform out operation.
+ /// </summary>
+ /// <param name="type">Operation type.</param>
/// <returns>Resulting object.</returns>
protected IUnmanagedTarget DoOutOpObject(int type)
{
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Plugin/PluginContext.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Plugin/PluginContext.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Plugin/PluginContext.cs
index cc20cb3..eac7556 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Plugin/PluginContext.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Plugin/PluginContext.cs
@@ -20,7 +20,6 @@ namespace Apache.Ignite.Core.Impl.Plugin
using Apache.Ignite.Core.Common;
using Apache.Ignite.Core.Impl.Common;
using Apache.Ignite.Core.Impl.Resource;
- using Apache.Ignite.Core.Impl.Unmanaged;
using Apache.Ignite.Core.Interop;
using Apache.Ignite.Core.Plugin;
@@ -65,11 +64,7 @@ namespace Apache.Ignite.Core.Impl.Plugin
/** <inheritdoc /> */
public IPlatformTarget GetExtension(int id)
{
- var ignite = _pluginProcessor.Ignite;
-
- var ext = UnmanagedUtils.ProcessorExtension(ignite.InteropProcessor, id);
-
- return new PlatformTarget(ext, ignite.Marshaller);
+ return _pluginProcessor.Ignite.GetExtension(id);
}
/** <inheritdoc /> */
http://git-wip-us.apache.org/repos/asf/ignite/blob/bdc9e4b9/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/IgniteJniNativeMethods.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/IgniteJniNativeMethods.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/IgniteJniNativeMethods.cs
index 289589f..1720a79 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/IgniteJniNativeMethods.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/IgniteJniNativeMethods.cs
@@ -30,105 +30,16 @@ namespace Apache.Ignite.Core.Impl.Unmanaged
public static extern int Reallocate(long memPtr, int cap);
[DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteIgnitionStart")]
- public static extern void* IgnitionStart(void* ctx, sbyte* cfgPath, sbyte* gridName, int factoryId,
+ public static extern void IgnitionStart(void* ctx, sbyte* cfgPath, sbyte* gridName, int factoryId,
long dataPtr);
[DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteIgnitionStop")]
[return: MarshalAs(UnmanagedType.U1)]
public static extern bool IgnitionStop(void* ctx, sbyte* gridName, [MarshalAs(UnmanagedType.U1)] bool cancel);
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteIgnitionStopAll")]
- public static extern void IgnitionStopAll(void* ctx, [MarshalAs(UnmanagedType.U1)] bool cancel);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorReleaseStart")]
- public static extern void ProcessorReleaseStart(void* ctx, void* obj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorProjection")]
- public static extern void* ProcessorProjection(void* ctx, void* obj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorCache")]
- public static extern void* ProcessorCache(void* ctx, void* obj, sbyte* name);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorCreateCache")]
- public static extern void* ProcessorCreateCache(void* ctx, void* obj, sbyte* name);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorCreateCacheFromConfig")]
- public static extern void* ProcessorCreateCacheFromConfig(void* ctx, void* obj, long memPtr);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorGetOrCreateCache")]
- public static extern void* ProcessorGetOrCreateCache(void* ctx, void* obj, sbyte* name);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorGetOrCreateCacheFromConfig")]
- public static extern void* ProcessorGetOrCreateCacheFromConfig(void* ctx, void* obj, long memPtr);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorCreateNearCache")]
- public static extern void* ProcessorCreateNearCache(void* ctx, void* obj, sbyte* name, long memPtr);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorGetOrCreateNearCache")]
- public static extern void* ProcessorGetOrCreateNearCache(void* ctx, void* obj, sbyte* name, long memPtr);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorDestroyCache")]
- public static extern void ProcessorDestroyCache(void* ctx, void* obj, sbyte* name);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorAffinity")]
- public static extern void* ProcessorAffinity(void* ctx, void* obj, sbyte* name);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorDataStreamer")]
- public static extern void* ProcessorDataStreamer(void* ctx, void* obj, sbyte* name,
- [MarshalAs(UnmanagedType.U1)] bool keepBinary);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorTransactions")]
- public static extern void* ProcessorTransactions(void* ctx, void* obj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorCompute")]
- public static extern void* ProcessorCompute(void* ctx, void* obj, void* prj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorMessage")]
- public static extern void* ProcessorMessage(void* ctx, void* obj, void* prj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorEvents")]
- public static extern void* ProcessorEvents(void* ctx, void* obj, void* prj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorServices")]
- public static extern void* ProcessorServices(void* ctx, void* obj, void* prj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorExtensions")]
- public static extern void* ProcessorExtensions(void* ctx, void* obj);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorExtension")]
- public static extern void* ProcessorExtension(void* ctx, void* obj, int id);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorAtomicLong")]
- public static extern void* ProcessorAtomicLong(void* ctx, void* obj, sbyte* name, long initVal,
- [MarshalAs(UnmanagedType.U1)] bool create);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorAtomicSequence")]
- public static extern void* ProcessorAtomicSequence(void* ctx, void* obj, sbyte* name, long initVal,
- [MarshalAs(UnmanagedType.U1)] bool create);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorAtomicReference")]
- public static extern void* ProcessorAtomicReference(void* ctx, void* obj, sbyte* name, long memPtr,
- [MarshalAs(UnmanagedType.U1)] bool create);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorGetIgniteConfiguration")]
- public static extern void ProcessorGetIgniteConfiguration(void* ctx, void* obj, long memPtr);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorGetCacheNames")]
- public static extern void ProcessorGetCacheNames(void* ctx, void* obj, long memPtr);
-
[DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteTargetInLongOutLong")]
public static extern long TargetInLongOutLong(void* ctx, void* target, int opType, long val);
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorLoggerIsLevelEnabled")]
- [return: MarshalAs(UnmanagedType.U1)]
- public static extern bool ProcessorLoggerIsLevelEnabled(void* ctx, void* obj, int level);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorLoggerLog")]
- public static extern void ProcessorLoggerLog(void* ctx, void* obj, int level, sbyte* messsage, sbyte* category, sbyte* errorInfo);
-
- [DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteProcessorBinaryProcessor")]
- public static extern void* ProcessorBinaryProcessor(void* ctx, void* obj);
-
[DllImport(IgniteUtils.FileIgniteJniDll, EntryPoint = "IgniteTargetInStreamOutLong")]
public static extern long TargetInStreamOutLong(void* ctx, void* target, int opType, long memPtr);