http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/ContextMessageClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/ContextMessageClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/ContextMessageClr2Java.cpp index b036c8b..c385e46 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/ContextMessageClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/ContextMessageClr2Java.cpp @@ -20,59 +20,61 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; - ContextMessageClr2Java::ContextMessageClr2Java(JNIEnv *env, jobject jobjectContextMessage) { - ManagedLog::LOGGER->LogStart("ContextMessageClr2Java::ContextMessageClr2Java"); + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; + ContextMessageClr2Java::ContextMessageClr2Java(JNIEnv *env, jobject jobjectContextMessage) { + ManagedLog::LOGGER->LogStart("ContextMessageClr2Java::ContextMessageClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectContextMessage = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectContextMessage)); - jclass jclassContextMessage = env->GetObjectClass (_jobjectContextMessage); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectContextMessage = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectContextMessage)); + jclass jclassContextMessage = env->GetObjectClass(_jobjectContextMessage); - jfieldID jidId = env->GetFieldID(jclassContextMessage, "contextMessageId", "Ljava/lang/String;"); - jfieldID jidSourceId = env->GetFieldID(jclassContextMessage, "messageSourceId", "Ljava/lang/String;"); - jfieldID jidMessage = env->GetFieldID(jclassContextMessage, "message", "()[B"); + jfieldID jidId = env->GetFieldID(jclassContextMessage, "contextMessageId", "Ljava/lang/String;"); + jfieldID jidSourceId = env->GetFieldID(jclassContextMessage, "messageSourceId", "Ljava/lang/String;"); + jfieldID jidMessage = env->GetFieldID(jclassContextMessage, "message", "()[B"); - _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectContextMessage, jidId))); - _jstringSourceId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectContextMessage, jidSourceId))); - _jarrayMessage = reinterpret_cast<jbyteArray>(env->NewGlobalRef(env->GetObjectField(_jobjectContextMessage, jidMessage))); + _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectContextMessage, jidId))); + _jstringSourceId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectContextMessage, jidSourceId))); + _jarrayMessage = reinterpret_cast<jbyteArray>(env->NewGlobalRef(env->GetObjectField(_jobjectContextMessage, jidMessage))); - ManagedLog::LOGGER->LogStop("ContextMessageClr2Java::ContextMessageClr2Java"); - } + ManagedLog::LOGGER->LogStop("ContextMessageClr2Java::ContextMessageClr2Java"); + } - String^ ContextMessageClr2Java::GetId() { - ManagedLog::LOGGER->Log("ContextMessageClr2Java::GetId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringId); - } + String^ ContextMessageClr2Java::GetId() { + ManagedLog::LOGGER->Log("ContextMessageClr2Java::GetId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringId); + } - String^ ContextMessageClr2Java::GetMessageSourceId() { - ManagedLog::LOGGER->Log("ContextMessageClr2Java::GetMessageSourceId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringSourceId); - } + String^ ContextMessageClr2Java::GetMessageSourceId() { + ManagedLog::LOGGER->Log("ContextMessageClr2Java::GetMessageSourceId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringSourceId); + } - array<byte>^ ContextMessageClr2Java::Get() { - ManagedLog::LOGGER->Log("ContextMessageClr2Java::Get"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedByteArrayFromJavaByteArray(env, _jarrayMessage); - } + array<byte>^ ContextMessageClr2Java::Get() { + ManagedLog::LOGGER->Log("ContextMessageClr2Java::Get"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedByteArrayFromJavaByteArray(env, _jarrayMessage); + } - void ContextMessageClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("ContextMessageClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectContextMessage); - } - } - } - } + void ContextMessageClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("ContextMessageClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectContextMessage); + } + } + } + } + } } } \ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/EvaluatorRequestorClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/EvaluatorRequestorClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/EvaluatorRequestorClr2Java.cpp index f863a40..2daed9e 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/EvaluatorRequestorClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/EvaluatorRequestorClr2Java.cpp @@ -20,52 +20,54 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; - EvaluatorRequestorClr2Java::EvaluatorRequestorClr2Java(JNIEnv *env, jobject jevaluatorRequestor) { - ManagedLog::LOGGER->LogStart("EvaluatorRequestorClr2Java::EvaluatorRequestorClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectEvaluatorRequestor = reinterpret_cast<jobject>(env->NewGlobalRef(jevaluatorRequestor)); - ManagedLog::LOGGER->LogStop("EvaluatorRequestorClr2Java::EvaluatorRequestorClr2Java"); - } + EvaluatorRequestorClr2Java::EvaluatorRequestorClr2Java(JNIEnv *env, jobject jevaluatorRequestor) { + ManagedLog::LOGGER->LogStart("EvaluatorRequestorClr2Java::EvaluatorRequestorClr2Java"); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectEvaluatorRequestor = reinterpret_cast<jobject>(env->NewGlobalRef(jevaluatorRequestor)); + ManagedLog::LOGGER->LogStop("EvaluatorRequestorClr2Java::EvaluatorRequestorClr2Java"); + } - void EvaluatorRequestorClr2Java::Submit(IEvaluatorRequest^ request) { - ManagedLog::LOGGER->LogStart("EvaluatorRequestorClr2Java::Submit"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassEvaluatorRequestor = env->GetObjectClass (_jobjectEvaluatorRequestor); - jmethodID jmidSubmit = env->GetMethodID(jclassEvaluatorRequestor, "submit", "(IIILjava/lang/String;)V"); + void EvaluatorRequestorClr2Java::Submit(IEvaluatorRequest^ request) { + ManagedLog::LOGGER->LogStart("EvaluatorRequestorClr2Java::Submit"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclassEvaluatorRequestor = env->GetObjectClass(_jobjectEvaluatorRequestor); + jmethodID jmidSubmit = env->GetMethodID(jclassEvaluatorRequestor, "submit", "(IIILjava/lang/String;)V"); - if (jmidSubmit == NULL) { - fprintf(stdout, " jmidSubmit is NULL\n"); - fflush (stdout); - return; - } - env -> CallObjectMethod( - _jobjectEvaluatorRequestor, - jmidSubmit, - request -> Number, - request -> MemoryMegaBytes, - request -> VirtualCore, - JavaStringFromManagedString(env, request -> Rack)); - ManagedLog::LOGGER->LogStop("EvaluatorRequestorClr2Java::Submit"); - } + if (jmidSubmit == NULL) { + fprintf(stdout, " jmidSubmit is NULL\n"); + fflush(stdout); + return; + } + env->CallObjectMethod( + _jobjectEvaluatorRequestor, + jmidSubmit, + request->Number, + request->MemoryMegaBytes, + request->VirtualCore, + JavaStringFromManagedString(env, request->Rack)); + ManagedLog::LOGGER->LogStop("EvaluatorRequestorClr2Java::Submit"); + } - void EvaluatorRequestorClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("EvaluatorRequestorClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectEvaluatorRequestor); - } - } - } - } + void EvaluatorRequestorClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("EvaluatorRequestorClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectEvaluatorRequestor); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedContextClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedContextClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedContextClr2Java.cpp index 58c322e..5a96202 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedContextClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedContextClr2Java.cpp @@ -20,77 +20,79 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; - FailedContextClr2Java::FailedContextClr2Java(JNIEnv *env, jobject jobjectFailedContext) { - ManagedLog::LOGGER->LogStart("FailedContextClr2Java::FailedContextClr2Java"); + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; + FailedContextClr2Java::FailedContextClr2Java(JNIEnv *env, jobject jobjectFailedContext) { + ManagedLog::LOGGER->LogStart("FailedContextClr2Java::FailedContextClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectFailedContext = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectFailedContext)); - jclass jclassFailedContext = env->GetObjectClass (_jobjectFailedContext); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectFailedContext = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectFailedContext)); + jclass jclassFailedContext = env->GetObjectClass(_jobjectFailedContext); - jfieldID jidContextId = env->GetFieldID(jclassFailedContext, "contextId", "Ljava/lang/String;"); - jfieldID jidEvaluatorId = env->GetFieldID(jclassFailedContext, "evaluatorId", "Ljava/lang/String;"); - jfieldID jidParentId = env->GetFieldID(jclassFailedContext, "parentContextId", "Ljava/lang/String;"); + jfieldID jidContextId = env->GetFieldID(jclassFailedContext, "contextId", "Ljava/lang/String;"); + jfieldID jidEvaluatorId = env->GetFieldID(jclassFailedContext, "evaluatorId", "Ljava/lang/String;"); + jfieldID jidParentId = env->GetFieldID(jclassFailedContext, "parentContextId", "Ljava/lang/String;"); - _jstringContextId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedContext, jidContextId))); - _jstringEvaluatorId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedContext, jidEvaluatorId))); - _jstringParentContextId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedContext, jidParentId))); + _jstringContextId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedContext, jidContextId))); + _jstringEvaluatorId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedContext, jidEvaluatorId))); + _jstringParentContextId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedContext, jidParentId))); - ManagedLog::LOGGER->LogStop("FailedContextClr2Java::FailedContextClr2Java"); - } + ManagedLog::LOGGER->LogStop("FailedContextClr2Java::FailedContextClr2Java"); + } - IActiveContextClr2Java^ FailedContextClr2Java::GetParentContext() { - ManagedLog::LOGGER->LogStart("FailedContextClr2Java::GetParentContext"); + IActiveContextClr2Java^ FailedContextClr2Java::GetParentContext() { + ManagedLog::LOGGER->LogStart("FailedContextClr2Java::GetParentContext"); - JNIEnv *env = RetrieveEnv(_jvm); + JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassFailedContext = env->GetObjectClass(_jobjectFailedContext); - jfieldID jidParentContext = env->GetFieldID(jclassFailedContext, "parentContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); - jobject jobjectParentContext = env->GetObjectField(_jobjectFailedContext, jidParentContext); - ManagedLog::LOGGER->LogStop("FailedContextClr2Java::GetParentContext"); + jclass jclassFailedContext = env->GetObjectClass(_jobjectFailedContext); + jfieldID jidParentContext = env->GetFieldID(jclassFailedContext, "parentContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); + jobject jobjectParentContext = env->GetObjectField(_jobjectFailedContext, jidParentContext); + ManagedLog::LOGGER->LogStop("FailedContextClr2Java::GetParentContext"); - return gcnew ActiveContextClr2Java(env, jobjectParentContext); - } + return gcnew ActiveContextClr2Java(env, jobjectParentContext); + } - String^ FailedContextClr2Java::GetId() { - ManagedLog::LOGGER->Log("FailedContextClr2Java::GetId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringContextId); - } + String^ FailedContextClr2Java::GetId() { + ManagedLog::LOGGER->Log("FailedContextClr2Java::GetId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringContextId); + } - String^ FailedContextClr2Java::GetEvaluatorId() { - ManagedLog::LOGGER->Log("FailedContextClr2Java::GetEvaluatorId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringEvaluatorId); - } + String^ FailedContextClr2Java::GetEvaluatorId() { + ManagedLog::LOGGER->Log("FailedContextClr2Java::GetEvaluatorId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringEvaluatorId); + } - String^ FailedContextClr2Java::GetParentId() { - ManagedLog::LOGGER->Log("FailedContextClr2Java::GetParentId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringParentContextId); - } + String^ FailedContextClr2Java::GetParentId() { + ManagedLog::LOGGER->Log("FailedContextClr2Java::GetParentId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringParentContextId); + } - IEvaluatorDescriptor^ FailedContextClr2Java::GetEvaluatorDescriptor() { - ManagedLog::LOGGER->LogStart("FailedContextClr2Java::GetEvaluatorDescriptor"); - return CommonUtilities::RetrieveEvaluatorDescriptor(_jobjectFailedContext, _jvm); - } + IEvaluatorDescriptor^ FailedContextClr2Java::GetEvaluatorDescriptor() { + ManagedLog::LOGGER->LogStart("FailedContextClr2Java::GetEvaluatorDescriptor"); + return CommonUtilities::RetrieveEvaluatorDescriptor(_jobjectFailedContext, _jvm); + } - void FailedContextClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("FailedContextClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectFailedContext); - } - } - } - } + void FailedContextClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("FailedContextClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectFailedContext); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedEvaluatorClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedEvaluatorClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedEvaluatorClr2Java.cpp index 71f7a1b..615e09f 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedEvaluatorClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedEvaluatorClr2Java.cpp @@ -22,53 +22,55 @@ using namespace JavaClrBridge; namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; - FailedEvaluatorClr2Java::FailedEvaluatorClr2Java(JNIEnv *env, jobject jobjectFailedEvaluator) { - ManagedLog::LOGGER->LogStart("FailedEvaluatorClr2Java::FailedEvaluatorClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectFailedEvaluator = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectFailedEvaluator)); + FailedEvaluatorClr2Java::FailedEvaluatorClr2Java(JNIEnv *env, jobject jobjectFailedEvaluator) { + ManagedLog::LOGGER->LogStart("FailedEvaluatorClr2Java::FailedEvaluatorClr2Java"); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectFailedEvaluator = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectFailedEvaluator)); - jclass jclassFailedEvaluator = env->GetObjectClass(_jobjectFailedEvaluator); - jfieldID jidEvaluatorId = env->GetFieldID(jclassFailedEvaluator, "evaluatorId", "Ljava/lang/String;"); - _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedEvaluator, jidEvaluatorId))); - ManagedLog::LOGGER->LogStop("FailedEvaluatorClr2Java::FailedEvaluatorClr2Java"); - } + jclass jclassFailedEvaluator = env->GetObjectClass(_jobjectFailedEvaluator); + jfieldID jidEvaluatorId = env->GetFieldID(jclassFailedEvaluator, "evaluatorId", "Ljava/lang/String;"); + _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectFailedEvaluator, jidEvaluatorId))); + ManagedLog::LOGGER->LogStop("FailedEvaluatorClr2Java::FailedEvaluatorClr2Java"); + } - IEvaluatorRequestorClr2Java^ FailedEvaluatorClr2Java::GetEvaluatorRequestor() { - ManagedLog::LOGGER->LogStart("FailedEvaluatorClr2Java::GetEvaluatorRequestor"); - JNIEnv *env = RetrieveEnv(_jvm); + IEvaluatorRequestorClr2Java^ FailedEvaluatorClr2Java::GetEvaluatorRequestor() { + ManagedLog::LOGGER->LogStart("FailedEvaluatorClr2Java::GetEvaluatorRequestor"); + JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassFailedEvaluator = env->GetObjectClass(_jobjectFailedEvaluator); - jfieldID jidEvaluatorRequestor = env->GetFieldID(jclassFailedEvaluator, "evaluatorRequestorBridge", "Lorg/apache/reef/javabridge/EvaluatorRequestorBridge;"); - jobject jobjectEvaluatorRequestor = env->GetObjectField(_jobjectFailedEvaluator, jidEvaluatorRequestor); - ManagedLog::LOGGER->LogStop("FailedEvaluatorClr2Java::GetEvaluatorRequestor"); - return gcnew EvaluatorRequestorClr2Java(env, jobjectEvaluatorRequestor); - } + jclass jclassFailedEvaluator = env->GetObjectClass(_jobjectFailedEvaluator); + jfieldID jidEvaluatorRequestor = env->GetFieldID(jclassFailedEvaluator, "evaluatorRequestorBridge", "Lorg/apache/reef/javabridge/EvaluatorRequestorBridge;"); + jobject jobjectEvaluatorRequestor = env->GetObjectField(_jobjectFailedEvaluator, jidEvaluatorRequestor); + ManagedLog::LOGGER->LogStop("FailedEvaluatorClr2Java::GetEvaluatorRequestor"); + return gcnew EvaluatorRequestorClr2Java(env, jobjectEvaluatorRequestor); + } - String^ FailedEvaluatorClr2Java::GetId() { - ManagedLog::LOGGER->Log("FailedEvaluatorClr2Java::GetId"); + String^ FailedEvaluatorClr2Java::GetId() { + ManagedLog::LOGGER->Log("FailedEvaluatorClr2Java::GetId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringId); - } + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringId); + } - void FailedEvaluatorClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("FailedEvaluatorClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectFailedEvaluator); - } - } - } - } + void FailedEvaluatorClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("FailedEvaluatorClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectFailedEvaluator); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedTaskClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedTaskClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedTaskClr2Java.cpp index 15db236..b27b13d 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedTaskClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/FailedTaskClr2Java.cpp @@ -20,62 +20,64 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; - FailedTaskClr2Java::FailedTaskClr2Java(JNIEnv *env, jobject jobjectFailedTask) { - ManagedLog::LOGGER->LogStart("FailedTaskClr2Java::AllocatedEvaluatorClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectFailedTask = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectFailedTask)); - ManagedLog::LOGGER->LogStop("FailedTaskClr2Java::AllocatedEvaluatorClr2Java"); - } + FailedTaskClr2Java::FailedTaskClr2Java(JNIEnv *env, jobject jobjectFailedTask) { + ManagedLog::LOGGER->LogStart("FailedTaskClr2Java::AllocatedEvaluatorClr2Java"); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectFailedTask = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectFailedTask)); + ManagedLog::LOGGER->LogStop("FailedTaskClr2Java::AllocatedEvaluatorClr2Java"); + } - IActiveContextClr2Java^ FailedTaskClr2Java::GetActiveContext() { - ManagedLog::LOGGER->LogStart("FailedTaskClr2Java::GetActiveContext"); + IActiveContextClr2Java^ FailedTaskClr2Java::GetActiveContext() { + ManagedLog::LOGGER->LogStart("FailedTaskClr2Java::GetActiveContext"); - JNIEnv *env = RetrieveEnv(_jvm); + JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassFailedTask = env->GetObjectClass(_jobjectFailedTask); - jfieldID jidActiveContext = env->GetFieldID(jclassFailedTask, "jactiveContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); - jobject jobjectActiveContext = env->GetObjectField(_jobjectFailedTask, jidActiveContext); + jclass jclassFailedTask = env->GetObjectClass(_jobjectFailedTask); + jfieldID jidActiveContext = env->GetFieldID(jclassFailedTask, "jactiveContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); + jobject jobjectActiveContext = env->GetObjectField(_jobjectFailedTask, jidActiveContext); - ManagedLog::LOGGER->LogStop("FailedTaskClr2Java::GetActiveContext"); - return gcnew ActiveContextClr2Java(env, jobjectActiveContext); - } + ManagedLog::LOGGER->LogStop("FailedTaskClr2Java::GetActiveContext"); + return gcnew ActiveContextClr2Java(env, jobjectActiveContext); + } - String^ FailedTaskClr2Java::GetString() { - ManagedLog::LOGGER->LogStart("FailedTaskClr2Java::GetString"); - JNIEnv *env = RetrieveEnv(_jvm); + String^ FailedTaskClr2Java::GetString() { + ManagedLog::LOGGER->LogStart("FailedTaskClr2Java::GetString"); + JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassFailedTask = env->GetObjectClass (_jobjectFailedTask); - jmethodID jmidGetFailedTaskString = env->GetMethodID(jclassFailedTask, "getFailedTaskString", "()Ljava/lang/String;"); + jclass jclassFailedTask = env->GetObjectClass(_jobjectFailedTask); + jmethodID jmidGetFailedTaskString = env->GetMethodID(jclassFailedTask, "getFailedTaskString", "()Ljava/lang/String;"); - if (jmidGetFailedTaskString == NULL) { - ManagedLog::LOGGER->LogStart("jmidGetFailedTaskString is NULL"); - return nullptr; - } - jstring jFailedTaskString = (jstring)env -> CallObjectMethod( - _jobjectFailedTask, - jmidGetFailedTaskString); - ManagedLog::LOGGER->LogStop("FailedTaskClr2Java::GetString"); - return ManagedStringFromJavaString(env, jFailedTaskString); - } + if (jmidGetFailedTaskString == NULL) { + ManagedLog::LOGGER->LogStart("jmidGetFailedTaskString is NULL"); + return nullptr; + } + jstring jFailedTaskString = (jstring)env->CallObjectMethod( + _jobjectFailedTask, + jmidGetFailedTaskString); + ManagedLog::LOGGER->LogStop("FailedTaskClr2Java::GetString"); + return ManagedStringFromJavaString(env, jFailedTaskString); + } - void FailedTaskClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("FailedTaskClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectFailedTask); - } - } - } - } + void FailedTaskClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("FailedTaskClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectFailedTask); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/HttpServerClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/HttpServerClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/HttpServerClr2Java.cpp index 78ab38a..f8a819d 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/HttpServerClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/HttpServerClr2Java.cpp @@ -20,118 +20,120 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; - HttpServerClr2Java::HttpServerClr2Java(JNIEnv *env, jobject jhttpServerEventBridge) { - ManagedLog::LOGGER->LogStart("HttpServerClr2Java::HttpServerClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jhttpServerEventBridge = reinterpret_cast<jobject>(env->NewGlobalRef(jhttpServerEventBridge)); - ManagedLog::LOGGER->LogStop("HttpServerClr2Java::HttpServerClr2Java"); - } + HttpServerClr2Java::HttpServerClr2Java(JNIEnv *env, jobject jhttpServerEventBridge) { + ManagedLog::LOGGER->LogStart("HttpServerClr2Java::HttpServerClr2Java"); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jhttpServerEventBridge = reinterpret_cast<jobject>(env->NewGlobalRef(jhttpServerEventBridge)); + ManagedLog::LOGGER->LogStop("HttpServerClr2Java::HttpServerClr2Java"); + } - String^ HttpServerClr2Java::GetQueryString() { - ManagedLog::LOGGER->LogStart("HttpServerClr2Java::GetQueryString"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclasshttpServerEventBridge = env->GetObjectClass (_jhttpServerEventBridge); - jmethodID jmidgetQueryString = env->GetMethodID(jclasshttpServerEventBridge, "getQueryString", "()Ljava/lang/String;"); - if (jmidgetQueryString == NULL) { - fprintf(stdout, " jmidgetQueryString is NULL\n"); - fflush (stdout); - return nullptr; - } - jstring jQueryString = (jstring) env->CallObjectMethod( - _jhttpServerEventBridge, - jmidgetQueryString); + String^ HttpServerClr2Java::GetQueryString() { + ManagedLog::LOGGER->LogStart("HttpServerClr2Java::GetQueryString"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclasshttpServerEventBridge = env->GetObjectClass(_jhttpServerEventBridge); + jmethodID jmidgetQueryString = env->GetMethodID(jclasshttpServerEventBridge, "getQueryString", "()Ljava/lang/String;"); + if (jmidgetQueryString == NULL) { + fprintf(stdout, " jmidgetQueryString is NULL\n"); + fflush(stdout); + return nullptr; + } + jstring jQueryString = (jstring)env->CallObjectMethod( + _jhttpServerEventBridge, + jmidgetQueryString); - ManagedLog::LOGGER->LogStop("HttpServerClr2Java::GetQueryString"); - return ManagedStringFromJavaString(env, jQueryString); - } + ManagedLog::LOGGER->LogStop("HttpServerClr2Java::GetQueryString"); + return ManagedStringFromJavaString(env, jQueryString); + } - array<byte>^ HttpServerClr2Java::GetQueryRequestData() { - ManagedLog::LOGGER->LogStart("HttpServerClr2Java::GetQueryRequestData"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclasshttpServerEventBridge = env->GetObjectClass (_jhttpServerEventBridge); - jmethodID jmidgetQueryBytes = env->GetMethodID(jclasshttpServerEventBridge, "getQueryRequestData", "()[B"); + array<byte>^ HttpServerClr2Java::GetQueryRequestData() { + ManagedLog::LOGGER->LogStart("HttpServerClr2Java::GetQueryRequestData"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclasshttpServerEventBridge = env->GetObjectClass(_jhttpServerEventBridge); + jmethodID jmidgetQueryBytes = env->GetMethodID(jclasshttpServerEventBridge, "getQueryRequestData", "()[B"); - if (jmidgetQueryBytes == NULL) { - ManagedLog::LOGGER->Log("jmidgetQueryBytes is NULL"); - return nullptr; - } - jbyteArray jQueryBytes = (jbyteArray) env->CallObjectMethod( - _jhttpServerEventBridge, - jmidgetQueryBytes); + if (jmidgetQueryBytes == NULL) { + ManagedLog::LOGGER->Log("jmidgetQueryBytes is NULL"); + return nullptr; + } + jbyteArray jQueryBytes = (jbyteArray)env->CallObjectMethod( + _jhttpServerEventBridge, + jmidgetQueryBytes); - ManagedLog::LOGGER->LogStop("HttpServerClr2Java::GetQueryRequestData"); - return ManagedByteArrayFromJavaByteArray(env, jQueryBytes); - } + ManagedLog::LOGGER->LogStop("HttpServerClr2Java::GetQueryRequestData"); + return ManagedByteArrayFromJavaByteArray(env, jQueryBytes); + } - void HttpServerClr2Java::SetQueryResult(String^ queryResult) { - ManagedLog::LOGGER->LogStart("HttpServerClr2Java::SetQueryResult"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclasshttpServerEventBridge = env->GetObjectClass (_jhttpServerEventBridge); - jmethodID jmidsetQueryResult = env->GetMethodID(jclasshttpServerEventBridge, "setQueryResult", "(Ljava/lang/String;)V"); + void HttpServerClr2Java::SetQueryResult(String^ queryResult) { + ManagedLog::LOGGER->LogStart("HttpServerClr2Java::SetQueryResult"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclasshttpServerEventBridge = env->GetObjectClass(_jhttpServerEventBridge); + jmethodID jmidsetQueryResult = env->GetMethodID(jclasshttpServerEventBridge, "setQueryResult", "(Ljava/lang/String;)V"); - if (jmidsetQueryResult == NULL) { - ManagedLog::LOGGER->Log("jmidsetQueryResult is NULL"); - return; - } - env->CallObjectMethod( - _jhttpServerEventBridge, - jmidsetQueryResult, - JavaStringFromManagedString(env, queryResult)); - ManagedLog::LOGGER->LogStop("HttpServerClr2Java::SetQueryResult"); - } + if (jmidsetQueryResult == NULL) { + ManagedLog::LOGGER->Log("jmidsetQueryResult is NULL"); + return; + } + env->CallObjectMethod( + _jhttpServerEventBridge, + jmidsetQueryResult, + JavaStringFromManagedString(env, queryResult)); + ManagedLog::LOGGER->LogStop("HttpServerClr2Java::SetQueryResult"); + } - void HttpServerClr2Java::SetQueryResponseData(array<byte>^ queryResponseData) { - ManagedLog::LOGGER->LogStart("HttpServerClr2Java::SetQueryResponseData"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclasshttpServerEventBridge = env->GetObjectClass (_jhttpServerEventBridge); - jmethodID jmidsetQueryResult = env->GetMethodID(jclasshttpServerEventBridge, "setQueryResponseData", "([B)V"); + void HttpServerClr2Java::SetQueryResponseData(array<byte>^ queryResponseData) { + ManagedLog::LOGGER->LogStart("HttpServerClr2Java::SetQueryResponseData"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclasshttpServerEventBridge = env->GetObjectClass(_jhttpServerEventBridge); + jmethodID jmidsetQueryResult = env->GetMethodID(jclasshttpServerEventBridge, "setQueryResponseData", "([B)V"); - if (jmidsetQueryResult == NULL) { - ManagedLog::LOGGER->Log("jmidsetQueryResult is NULL"); - return; - } - env->CallObjectMethod( - _jhttpServerEventBridge, - jmidsetQueryResult, - JavaByteArrayFromManagedByteArray(env, queryResponseData)); - ManagedLog::LOGGER->LogStop("HttpServerClr2Java::SetQueryResponseData"); - } + if (jmidsetQueryResult == NULL) { + ManagedLog::LOGGER->Log("jmidsetQueryResult is NULL"); + return; + } + env->CallObjectMethod( + _jhttpServerEventBridge, + jmidsetQueryResult, + JavaByteArrayFromManagedByteArray(env, queryResponseData)); + ManagedLog::LOGGER->LogStop("HttpServerClr2Java::SetQueryResponseData"); + } - void HttpServerClr2Java::SetUriSpecification(String^ uriSpecification) { - ManagedLog::LOGGER->LogStart("HttpServerClr2Java::SetUriSpecification"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclasshttpServerEventBridge = env->GetObjectClass (_jhttpServerEventBridge); - jmethodID jmidsetUriSpecification = env->GetMethodID(jclasshttpServerEventBridge, "setUriSpecification", "(Ljava/lang/String;)V"); + void HttpServerClr2Java::SetUriSpecification(String^ uriSpecification) { + ManagedLog::LOGGER->LogStart("HttpServerClr2Java::SetUriSpecification"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclasshttpServerEventBridge = env->GetObjectClass(_jhttpServerEventBridge); + jmethodID jmidsetUriSpecification = env->GetMethodID(jclasshttpServerEventBridge, "setUriSpecification", "(Ljava/lang/String;)V"); - if (jmidsetUriSpecification == NULL) { - ManagedLog::LOGGER->Log("jmidsetUriSpecification is NULL"); - return; - } - env->CallObjectMethod( - _jhttpServerEventBridge, - jmidsetUriSpecification, - JavaStringFromManagedString(env, uriSpecification)); - ManagedLog::LOGGER->LogStop("HttpServerClr2Java::SetUriSpecification"); - } + if (jmidsetUriSpecification == NULL) { + ManagedLog::LOGGER->Log("jmidsetUriSpecification is NULL"); + return; + } + env->CallObjectMethod( + _jhttpServerEventBridge, + jmidsetUriSpecification, + JavaStringFromManagedString(env, uriSpecification)); + ManagedLog::LOGGER->LogStop("HttpServerClr2Java::SetUriSpecification"); + } - void HttpServerClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("HttpServerClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jhttpServerEventBridge); - } - } - } - } + void HttpServerClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("HttpServerClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jhttpServerEventBridge); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/JavaClrBridge.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/JavaClrBridge.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/JavaClrBridge.cpp index 2bd5c74..2b8c7da 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/JavaClrBridge.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/JavaClrBridge.cpp @@ -31,7 +31,7 @@ using namespace System::IO; using namespace System::Collections::Generic; using namespace System::Runtime::InteropServices; using namespace System::Reflection; -using namespace Org::Apache::REEF::Driver::Bridge; +using namespace Org::Apache::REEF::Driver::Bridge::Clr2java; ref class ManagedLog { internal: http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/RunningTaskClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/RunningTaskClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/RunningTaskClr2Java.cpp index 0bf4b73..dfc8ae3 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/RunningTaskClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/RunningTaskClr2Java.cpp @@ -20,73 +20,75 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; - RunningTaskClr2Java::RunningTaskClr2Java(JNIEnv *env, jobject jobjectRunningTask) { - ManagedLog::LOGGER->LogStart("RunningTaskClr2Java::RunningTaskClr2Java"); + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; + RunningTaskClr2Java::RunningTaskClr2Java(JNIEnv *env, jobject jobjectRunningTask) { + ManagedLog::LOGGER->LogStart("RunningTaskClr2Java::RunningTaskClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectRunningTask = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectRunningTask)); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectRunningTask = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectRunningTask)); - jclass jclassRunningTask = env->GetObjectClass (_jobjectRunningTask); - jmethodID jmidGetId = env->GetMethodID(jclassRunningTask, "getId", "()Ljava/lang/String;"); + jclass jclassRunningTask = env->GetObjectClass(_jobjectRunningTask); + jmethodID jmidGetId = env->GetMethodID(jclassRunningTask, "getId", "()Ljava/lang/String;"); - _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env -> CallObjectMethod(_jobjectRunningTask, jmidGetId))); - ManagedLog::LOGGER->LogStop("RunningTaskClr2Java::RunningTaskClr2Java"); - } + _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->CallObjectMethod(_jobjectRunningTask, jmidGetId))); + ManagedLog::LOGGER->LogStop("RunningTaskClr2Java::RunningTaskClr2Java"); + } - IActiveContextClr2Java^ RunningTaskClr2Java::GetActiveContext() { - ManagedLog::LOGGER->LogStart("RunningTaskClr2Java::GetActiveContext"); + IActiveContextClr2Java^ RunningTaskClr2Java::GetActiveContext() { + ManagedLog::LOGGER->LogStart("RunningTaskClr2Java::GetActiveContext"); - JNIEnv *env = RetrieveEnv(_jvm); + JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassRunningTask = env->GetObjectClass(_jobjectRunningTask); - jfieldID jidActiveContext = env->GetFieldID(jclassRunningTask, "jactiveContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); - jobject jobjectActiveContext = env->GetObjectField(_jobjectRunningTask, jidActiveContext); - ManagedLog::LOGGER->LogStop("RunningTaskClr2Java::GetActiveContext"); + jclass jclassRunningTask = env->GetObjectClass(_jobjectRunningTask); + jfieldID jidActiveContext = env->GetFieldID(jclassRunningTask, "jactiveContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); + jobject jobjectActiveContext = env->GetObjectField(_jobjectRunningTask, jidActiveContext); + ManagedLog::LOGGER->LogStop("RunningTaskClr2Java::GetActiveContext"); - return gcnew ActiveContextClr2Java(env, jobjectActiveContext); - } + return gcnew ActiveContextClr2Java(env, jobjectActiveContext); + } - String^ RunningTaskClr2Java::GetId() { - ManagedLog::LOGGER->Log("RunningTaskClr2Java::GetId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringId); - } + String^ RunningTaskClr2Java::GetId() { + ManagedLog::LOGGER->Log("RunningTaskClr2Java::GetId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringId); + } - void RunningTaskClr2Java::Send(array<byte>^ message) { - ManagedLog::LOGGER->LogStart("RunningTaskClr2Java::Send"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassRunningTask = env->GetObjectClass(_jobjectRunningTask); - jmethodID jmidSend = env->GetMethodID(jclassRunningTask, "send", "([B)V"); + void RunningTaskClr2Java::Send(array<byte>^ message) { + ManagedLog::LOGGER->LogStart("RunningTaskClr2Java::Send"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclassRunningTask = env->GetObjectClass(_jobjectRunningTask); + jmethodID jmidSend = env->GetMethodID(jclassRunningTask, "send", "([B)V"); - if (jmidSend == NULL) { - ManagedLog::LOGGER->Log("jmidSend is NULL"); - return; - } - env->CallObjectMethod( - _jobjectRunningTask, - jmidSend, - JavaByteArrayFromManagedByteArray(env, message)); - ManagedLog::LOGGER->LogStop("RunningTaskClr2Java::Send"); - } + if (jmidSend == NULL) { + ManagedLog::LOGGER->Log("jmidSend is NULL"); + return; + } + env->CallObjectMethod( + _jobjectRunningTask, + jmidSend, + JavaByteArrayFromManagedByteArray(env, message)); + ManagedLog::LOGGER->LogStop("RunningTaskClr2Java::Send"); + } - void RunningTaskClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("RunningTaskClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectRunningTask); - } - } - } - } + void RunningTaskClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("RunningTaskClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectRunningTask); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/SuspendedTaskClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/SuspendedTaskClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/SuspendedTaskClr2Java.cpp index e03aa57..e052d24 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/SuspendedTaskClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/SuspendedTaskClr2Java.cpp @@ -20,66 +20,68 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; - SuspendedTaskClr2Java::SuspendedTaskClr2Java(JNIEnv *env, jobject jobjectSuspendedTask) { - ManagedLog::LOGGER->LogStart("SuspendedTaskClr2Java::SuspendedTaskClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectSuspendedTask = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectSuspendedTask)); + SuspendedTaskClr2Java::SuspendedTaskClr2Java(JNIEnv *env, jobject jobjectSuspendedTask) { + ManagedLog::LOGGER->LogStart("SuspendedTaskClr2Java::SuspendedTaskClr2Java"); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectSuspendedTask = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectSuspendedTask)); - jclass jclassSuspendedTask = env->GetObjectClass (_jobjectSuspendedTask); - jfieldID jidTaskId = env->GetFieldID(jclassSuspendedTask, "taskId", "Ljava/lang/String;"); - _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectSuspendedTask, jidTaskId))); - ManagedLog::LOGGER->LogStop("SuspendedTaskClr2Java::SuspendedTaskClr2Java"); - } + jclass jclassSuspendedTask = env->GetObjectClass(_jobjectSuspendedTask); + jfieldID jidTaskId = env->GetFieldID(jclassSuspendedTask, "taskId", "Ljava/lang/String;"); + _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectSuspendedTask, jidTaskId))); + ManagedLog::LOGGER->LogStop("SuspendedTaskClr2Java::SuspendedTaskClr2Java"); + } - IActiveContextClr2Java^ SuspendedTaskClr2Java::GetActiveContext() { - ManagedLog::LOGGER->LogStart("SuspendedTaskClr2Java::GetActiveContext"); - JNIEnv *env = RetrieveEnv(_jvm); + IActiveContextClr2Java^ SuspendedTaskClr2Java::GetActiveContext() { + ManagedLog::LOGGER->LogStart("SuspendedTaskClr2Java::GetActiveContext"); + JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassSuspendedTask = env->GetObjectClass (_jobjectSuspendedTask); - jfieldID jidActiveContext = env->GetFieldID(jclassSuspendedTask, "jactiveContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); - jobject jobjectActiveContext = env->GetObjectField(_jobjectSuspendedTask, jidActiveContext); - ManagedLog::LOGGER->LogStop("SuspendedTaskClr2Java::GetActiveContext"); - return gcnew ActiveContextClr2Java(env, jobjectActiveContext); - } + jclass jclassSuspendedTask = env->GetObjectClass(_jobjectSuspendedTask); + jfieldID jidActiveContext = env->GetFieldID(jclassSuspendedTask, "jactiveContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;"); + jobject jobjectActiveContext = env->GetObjectField(_jobjectSuspendedTask, jidActiveContext); + ManagedLog::LOGGER->LogStop("SuspendedTaskClr2Java::GetActiveContext"); + return gcnew ActiveContextClr2Java(env, jobjectActiveContext); + } - String^ SuspendedTaskClr2Java::GetId() { - ManagedLog::LOGGER->Log("SuspendedTaskClr2Java::GetId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringId); - } + String^ SuspendedTaskClr2Java::GetId() { + ManagedLog::LOGGER->Log("SuspendedTaskClr2Java::GetId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringId); + } - array<byte>^ SuspendedTaskClr2Java::Get() { - ManagedLog::LOGGER->Log("SuspendedTaskClr2Java::Get"); - JNIEnv *env = RetrieveEnv(_jvm); - jclass jclassSuspendedTask = env->GetObjectClass (_jobjectSuspendedTask); - jmethodID jmidGet = env->GetMethodID(jclassSuspendedTask, "get", "()[B"); + array<byte>^ SuspendedTaskClr2Java::Get() { + ManagedLog::LOGGER->Log("SuspendedTaskClr2Java::Get"); + JNIEnv *env = RetrieveEnv(_jvm); + jclass jclassSuspendedTask = env->GetObjectClass(_jobjectSuspendedTask); + jmethodID jmidGet = env->GetMethodID(jclassSuspendedTask, "get", "()[B"); - if (jmidGet == NULL) { - ManagedLog::LOGGER->Log("jmidGet is NULL"); - return nullptr; - } - jbyteArray jMessage = (jbyteArray) env->CallObjectMethod(_jobjectSuspendedTask, jmidGet); - return ManagedByteArrayFromJavaByteArray(env, jMessage); - } + if (jmidGet == NULL) { + ManagedLog::LOGGER->Log("jmidGet is NULL"); + return nullptr; + } + jbyteArray jMessage = (jbyteArray)env->CallObjectMethod(_jobjectSuspendedTask, jmidGet); + return ManagedByteArrayFromJavaByteArray(env, jMessage); + } - void SuspendedTaskClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("SuspendedTaskClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectSuspendedTask); - } - } - } - } + void SuspendedTaskClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("SuspendedTaskClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectSuspendedTask); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/TaskMessageClr2Java.cpp ---------------------------------------------------------------------- diff --git a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/TaskMessageClr2Java.cpp b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/TaskMessageClr2Java.cpp index 57834b7..1ee79e9 100644 --- a/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/TaskMessageClr2Java.cpp +++ b/lang/cpp/reef-bridge-clr/src/main/Cpp/CppBridge/JavaClrBridge/TaskMessageClr2Java.cpp @@ -20,41 +20,43 @@ namespace Org { namespace Apache { - namespace REEF { - namespace Driver { - namespace Bridge { - ref class ManagedLog { - internal: - static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); - }; + namespace REEF { + namespace Driver { + namespace Bridge { + namespace Clr2java { + ref class ManagedLog { + internal: + static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>"); + }; - TaskMessageClr2Java::TaskMessageClr2Java(JNIEnv *env, jobject jtaskMessage) { - ManagedLog::LOGGER->LogStart("TaskMessageClr2Java::TaskMessageClr2Java"); - pin_ptr<JavaVM*> pJavaVm = &_jvm; - if (env->GetJavaVM(pJavaVm) != 0) { - ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); - } - _jobjectTaskMessage = reinterpret_cast<jobject>(env->NewGlobalRef(jtaskMessage)); + TaskMessageClr2Java::TaskMessageClr2Java(JNIEnv *env, jobject jtaskMessage) { + ManagedLog::LOGGER->LogStart("TaskMessageClr2Java::TaskMessageClr2Java"); + pin_ptr<JavaVM*> pJavaVm = &_jvm; + if (env->GetJavaVM(pJavaVm) != 0) { + ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr); + } + _jobjectTaskMessage = reinterpret_cast<jobject>(env->NewGlobalRef(jtaskMessage)); - jclass jclassTaskMessage = env->GetObjectClass (_jobjectTaskMessage); - jfieldID jidTaskId = env->GetFieldID(jclassTaskMessage, "taskId", "Ljava/lang/String;"); - _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectTaskMessage, jidTaskId))); - ManagedLog::LOGGER->LogStop("TaskMessageClr2Java::TaskMessageClr2Java"); - } + jclass jclassTaskMessage = env->GetObjectClass(_jobjectTaskMessage); + jfieldID jidTaskId = env->GetFieldID(jclassTaskMessage, "taskId", "Ljava/lang/String;"); + _jstringId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectTaskMessage, jidTaskId))); + ManagedLog::LOGGER->LogStop("TaskMessageClr2Java::TaskMessageClr2Java"); + } - void TaskMessageClr2Java::OnError(String^ message) { - ManagedLog::LOGGER->Log("TaskMessageClr2Java::OnError"); - JNIEnv *env = RetrieveEnv(_jvm); - HandleClr2JavaError(env, message, _jobjectTaskMessage); - } + void TaskMessageClr2Java::OnError(String^ message) { + ManagedLog::LOGGER->Log("TaskMessageClr2Java::OnError"); + JNIEnv *env = RetrieveEnv(_jvm); + HandleClr2JavaError(env, message, _jobjectTaskMessage); + } - String^ TaskMessageClr2Java::GetId() { - ManagedLog::LOGGER->Log("TaskMessageClr2Java::GetId"); - JNIEnv *env = RetrieveEnv(_jvm); - return ManagedStringFromJavaString(env, _jstringId); - } - } - } - } + String^ TaskMessageClr2Java::GetId() { + ManagedLog::LOGGER->Log("TaskMessageClr2Java::GetId"); + JNIEnv *env = RetrieveEnv(_jvm); + return ManagedStringFromJavaString(env, _jstringId); + } + } + } + } + } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Client/CLRBridgeClient.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Client/CLRBridgeClient.cs b/lang/cs/Org.Apache.REEF.Client/CLRBridgeClient.cs index 9dbd970..84e5b68 100644 --- a/lang/cs/Org.Apache.REEF.Client/CLRBridgeClient.cs +++ b/lang/cs/Org.Apache.REEF.Client/CLRBridgeClient.cs @@ -19,7 +19,6 @@ using Org.Apache.REEF.Common.Evaluator; using Org.Apache.REEF.Driver; -using Org.Apache.REEF.Driver.bridge; using Org.Apache.REEF.Driver.Bridge; using Org.Apache.REEF.Driver.Defaults; using Org.Apache.REEF.Examples.HelloCLRBridge.Handlers; http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Api/AbstractFailure.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Api/AbstractFailure.cs b/lang/cs/Org.Apache.REEF.Common/Api/AbstractFailure.cs new file mode 100644 index 0000000..50fd6b7 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Api/AbstractFailure.cs @@ -0,0 +1,142 @@ +/** + * 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. + */ + +using Org.Apache.REEF.Utilities; +using System; +using System.Globalization; +using Org.Apache.REEF.Utilities.Logging; + +namespace Org.Apache.REEF.Common.Api +{ + public abstract class AbstractFailure : IFailure + { + private static readonly Logger LOGGER = Logger.GetLogger(typeof(AbstractFailure)); + + public AbstractFailure() + { + } + + /// <summary> + /// Most detailed error message constructor that takes all parameters possible. + /// </summary> + /// <param name="id">Identifier of the entity that produced the error. Cannot be null.</param> + /// <param name="message">One-line error message. Cannot be null.</param> + /// <param name="description">Long error description. Can be null.</param> + /// <param name="cause">Exception that caused the error. Can be null.</param> + /// <param name="data">byte array that contains serialized version of the error. Can be null.</param> + public AbstractFailure(string id, string message, string description, Exception cause, byte[] data) + { + if (string.IsNullOrEmpty(id)) + { + Org.Apache.REEF.Utilities.Diagnostics.Exceptions.Throw(new ArgumentException("id"), LOGGER); + } + if (string.IsNullOrEmpty(message)) + { + Org.Apache.REEF.Utilities.Diagnostics.Exceptions.Throw(new ArgumentException("message"), LOGGER); + } + Id = id; + Message = message; + Description = Optional<string>.OfNullable(string.IsNullOrEmpty(description) ? GetStackTrace(cause) : description); + Cause = Optional<Exception>.OfNullable(cause); + Data = Optional<byte[]>.OfNullable(data); + } + + /// <summary> + /// Build error message given the entity ID and the short error message. + /// </summary> + /// <param name="id"></param> + /// <param name="message"></param> + public AbstractFailure(string id, string message) + : this(id, message, null, null, null) + { + } + + /// <summary> + /// Build error message given the failed entity ID and Exception. + /// Populates the message with the Exception.getMessage() result, and stores + /// the exception stack trace in the description. + /// </summary> + /// <param name="id"></param> + /// <param name="cause"></param> + public AbstractFailure(string id, Exception cause) + { + if (string.IsNullOrEmpty(id)) + { + Org.Apache.REEF.Utilities.Diagnostics.Exceptions.Throw(new ArgumentException("id"), LOGGER); + } + Id = id; + Message = cause.Message; + Description = Optional<string>.Of(GetStackTrace(cause)); + Cause = Optional<Exception>.Of(cause); + Data = Optional<byte[]>.Empty(); + } + + /// <summary> + /// Build error message given the entity ID plus short and long error message. + /// </summary> + /// <param name="id"></param> + /// <param name="message"></param> + /// <param name="description"></param> + public AbstractFailure(string id, string message, string description) + : this(id, message, description, null, null) + { + } + + /// <summary> + /// Identifier of the entity that produced the error. Cannot be null. + /// </summary> + public string Id { get; set; } + + public string Message { get; set; } + + public Optional<string> Description { get; set; } + + public Optional<string> Reason { get; set; } + + public Optional<Exception> Cause { get; set; } + + public Optional<byte[]> Data { get; set; } + + public Exception AsError() + { + return Cause.IsPresent() ? Cause.Value : new InvalidOperationException(ToString()); + } + + /// <summary> + /// Helper function: produce the string that contains the given exception's stack trace. Returns null if the argument is null. + /// </summary> + /// <param name="ex"></param> + public string GetStackTrace(Exception ex) + { + if (ex == null) + { + return null; + } + else + { + return ex.StackTrace; + } + } + + public override string ToString() + { + return string.Format(CultureInfo.InvariantCulture, "{0} with id={1} failed: {2}", GetType(), Id, Message); + } + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Api/IAbstractFailure.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Api/IAbstractFailure.cs b/lang/cs/Org.Apache.REEF.Common/Api/IAbstractFailure.cs new file mode 100644 index 0000000..fd94b62 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Api/IAbstractFailure.cs @@ -0,0 +1,25 @@ +/** + * 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. + */ + +namespace Org.Apache.REEF.Common.Api +{ + public interface IAbstractFailure : IFailure + { + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Api/IFailure.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Api/IFailure.cs b/lang/cs/Org.Apache.REEF.Common/Api/IFailure.cs new file mode 100644 index 0000000..454bdf4 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Api/IFailure.cs @@ -0,0 +1,57 @@ +/** + * 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. + */ + +using Org.Apache.REEF.Utilities; +using System; + +namespace Org.Apache.REEF.Common.Api +{ + /// <summary> + /// Common interface for all error messages in REEF. + /// Most of its functionality is generic and implemented in the AbstractFailure class. + /// </summary> + public interface IFailure : IIdentifiable + { + /// <summary> + /// One-line error message. Should never be null. + /// </summary> + string Message { get; set; } + + /// <summary> + /// Optional long error description. + /// </summary> + Optional<string> Description { get; set; } + + /// <summary> + /// Exception that caused the error, or null. + /// </summary> + Optional<string> Reason { get; set; } + + /// <summary> + /// Optional serialized version of the error message. + /// </summary> + Optional<byte[]> Data { get; set; } + + /// <summary> + /// Return the original Java Exception, or generate a new one if it does not exists. + /// ALWAYS returns an exception, never null + /// </summary> + Exception AsError(); + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Api/IResourceLaunchHandler.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Api/IResourceLaunchHandler.cs b/lang/cs/Org.Apache.REEF.Common/Api/IResourceLaunchHandler.cs new file mode 100644 index 0000000..f2fcd22 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Api/IResourceLaunchHandler.cs @@ -0,0 +1,28 @@ +/** + * 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. + */ + +using System; +using Org.Apache.REEF.Common.Protobuf.ReefProtocol; + +namespace Org.Apache.REEF.Common.Api +{ + public interface IResourceLaunchHandler : IObserver<ResourceLaunchProto> + { + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Api/IResourceReleaseHandler.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Api/IResourceReleaseHandler.cs b/lang/cs/Org.Apache.REEF.Common/Api/IResourceReleaseHandler.cs new file mode 100644 index 0000000..b02cc3d --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Api/IResourceReleaseHandler.cs @@ -0,0 +1,28 @@ +/** + * 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. + */ + +using System; +using Org.Apache.REEF.Common.Protobuf.ReefProtocol; + +namespace Org.Apache.REEF.Common.Api +{ + public interface IResourceReleaseHandler : IObserver<ResourceReleaseProto> + { + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Api/IResourceRequestHandler.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Api/IResourceRequestHandler.cs b/lang/cs/Org.Apache.REEF.Common/Api/IResourceRequestHandler.cs new file mode 100644 index 0000000..5038858 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Api/IResourceRequestHandler.cs @@ -0,0 +1,28 @@ +/** + * 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. + */ + +using System; +using Org.Apache.REEF.Common.Protobuf.ReefProtocol; + +namespace Org.Apache.REEF.Common.Api +{ + public interface IResourceRequestHandler : IObserver<ResourceRequestProto> + { + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Avro/AvroDriverInfo.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Avro/AvroDriverInfo.cs b/lang/cs/Org.Apache.REEF.Common/Avro/AvroDriverInfo.cs new file mode 100644 index 0000000..2f0ae95 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Avro/AvroDriverInfo.cs @@ -0,0 +1,65 @@ +//<auto-generated /> +namespace Org.Apache.REEF.Common.Avro +{ + using System.Collections.Generic; + using System.Runtime.Serialization; + + /// <summary> + /// Used to serialize and deserialize Avro record org.apache.reef.webserver.AvroDriverInfo. + /// </summary> + [DataContract(Namespace = "org.apache.reef.webserver")] + [KnownType(typeof(List<Org.Apache.REEF.Common.Avro.AvroReefServiceInfo>))] + public partial class AvroDriverInfo + { + private const string JsonSchema = @"{""type"":""record"",""name"":""org.apache.reef.webserver.AvroDriverInfo"",""fields"":[{""name"":""remoteId"",""type"":""string""},{""name"":""startTime"",""type"":""string""},{""name"":""services"",""type"":{""type"":""array"",""items"":{""type"":""record"",""name"":""org.apache.reef.webserver.AvroReefServiceInfo"",""fields"":[{""name"":""serviceName"",""type"":""string""},{""name"":""serviceInfo"",""type"":""string""}]}}}]}"; + + /// <summary> + /// Gets the schema. + /// </summary> + public static string Schema + { + get + { + return JsonSchema; + } + } + + /// <summary> + /// Gets or sets the remoteId field. + /// </summary> + [DataMember] + public string remoteId { get; set; } + + /// <summary> + /// Gets or sets the startTime field. + /// </summary> + [DataMember] + public string startTime { get; set; } + + /// <summary> + /// Gets or sets the services field. + /// </summary> + [DataMember] + public IList<Org.Apache.REEF.Common.Avro.AvroReefServiceInfo> services { get; set; } + + /// <summary> + /// Initializes a new instance of the <see cref="AvroDriverInfo"/> class. + /// </summary> + public AvroDriverInfo() + { + } + + /// <summary> + /// Initializes a new instance of the <see cref="AvroDriverInfo"/> class. + /// </summary> + /// <param name="remoteId">The remoteId.</param> + /// <param name="startTime">The startTime.</param> + /// <param name="services">The services.</param> + public AvroDriverInfo(string remoteId, string startTime, IList<Org.Apache.REEF.Common.Avro.AvroReefServiceInfo> services) + { + this.remoteId = remoteId; + this.startTime = startTime; + this.services = services; + } + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpRequest.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpRequest.cs b/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpRequest.cs new file mode 100644 index 0000000..3767c2b --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpRequest.cs @@ -0,0 +1,79 @@ +//<auto-generated /> +namespace Org.Apache.REEF.Common.Avro +{ + using System.Runtime.Serialization; + + /// <summary> + /// Used to serialize and deserialize Avro record org.apache.reef.webserver.AvroHttpRequest. + /// </summary> + [DataContract(Namespace = "org.apache.reef.webserver")] + public partial class AvroHttpRequest + { + private const string JsonSchema = @"{""type"":""record"",""name"":""org.apache.reef.webserver.AvroHttpRequest"",""fields"":[{""name"":""requestUrl"",""type"":""string""},{""name"":""pathInfo"",""type"":""string""},{""name"":""queryString"",""type"":""string""},{""name"":""httpMethod"",""type"":""string""},{""name"":""inputStream"",""type"":""bytes""}]}"; + + /// <summary> + /// Gets the schema. + /// </summary> + public static string Schema + { + get + { + return JsonSchema; + } + } + + /// <summary> + /// Gets or sets the requestUrl field. + /// </summary> + [DataMember] + public string RequestUrl { get; set; } + + /// <summary> + /// Gets or sets the pathInfo field. + /// </summary> + [DataMember] + public string PathInfo { get; set; } + + /// <summary> + /// Gets or sets the queryString field. + /// </summary> + [DataMember] + public string QueryString { get; set; } + + /// <summary> + /// Gets or sets the httpMethod field. + /// </summary> + [DataMember] + public string HttpMethod { get; set; } + + /// <summary> + /// Gets or sets the inputStream field. + /// </summary> + [DataMember] + public byte[] InputStream { get; set; } + + /// <summary> + /// Initializes a new instance of the <see cref="AvroHttpRequest"/> class. + /// </summary> + public AvroHttpRequest() + { + } + + /// <summary> + /// Initializes a new instance of the <see cref="AvroHttpRequest"/> class. + /// </summary> + /// <param name="requestUrl">The requestUrl.</param> + /// <param name="pathInfo">The pathInfo.</param> + /// <param name="queryString">The queryString.</param> + /// <param name="httpMethod">The httpMethod.</param> + /// <param name="inputStream">The inputStream.</param> + public AvroHttpRequest(string requestUrl, string pathInfo, string queryString, string httpMethod, byte[] inputStream) + { + RequestUrl = requestUrl; + PathInfo = pathInfo; + QueryString = queryString; + HttpMethod = httpMethod; + InputStream = inputStream; + } + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpSerializer.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpSerializer.cs b/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpSerializer.cs new file mode 100644 index 0000000..2d1fb53 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Avro/AvroHttpSerializer.cs @@ -0,0 +1,36 @@ +/** + * 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. + */ + +using Microsoft.Hadoop.Avro; +using System.IO; + +namespace Org.Apache.REEF.Common.Avro +{ + public class AvroHttpSerializer + { + public static AvroHttpRequest FromBytes(byte[] serializedBytes) + { + var serializer = AvroSerializer.Create<AvroHttpRequest>(); + using (var stream = new MemoryStream(serializedBytes)) + { + return serializer.Deserialize(stream); + } + } + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Avro/AvroJsonSerializer.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Avro/AvroJsonSerializer.cs b/lang/cs/Org.Apache.REEF.Common/Avro/AvroJsonSerializer.cs new file mode 100644 index 0000000..a3c0007 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Avro/AvroJsonSerializer.cs @@ -0,0 +1,52 @@ +/** + * 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. + */ + +using Org.Apache.REEF.Utilities; + +using Newtonsoft.Json; + +namespace Org.Apache.REEF.Common.Avro +{ + /// <summary> + /// Wrapper class for serialize/deserialize Avro json. This avoids having to reference Avro dll in every project + /// </summary> + /// <typeparam name="T"> the deserialized type</typeparam> + public class AvroJsonSerializer<T> + { + public static T FromString(string str) + { + return JsonConvert.DeserializeObject<T>(str); + } + + public static string ToString(T obj) + { + return JsonConvert.SerializeObject(obj); + } + + public static T FromBytes(byte[] bytes) + { + return FromString(ByteUtilities.ByteArrarysToString(bytes)); + } + + public static byte[] ToBytes(T obj) + { + return ByteUtilities.StringToByteArrays(JsonConvert.SerializeObject(obj)); + } + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Avro/AvroReefServiceInfo.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Avro/AvroReefServiceInfo.cs b/lang/cs/Org.Apache.REEF.Common/Avro/AvroReefServiceInfo.cs new file mode 100644 index 0000000..9b65c62 --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Avro/AvroReefServiceInfo.cs @@ -0,0 +1,55 @@ +//<auto-generated /> +namespace Org.Apache.REEF.Common.Avro +{ + using System.Runtime.Serialization; + + /// <summary> + /// Used to serialize and deserialize Avro record org.apache.reef.webserver.AvroReefServiceInfo. + /// </summary> + [DataContract(Namespace = "org.apache.reef.webserver")] + public partial class AvroReefServiceInfo + { + private const string JsonSchema = @"{""type"":""record"",""name"":""org.apache.reef.webserver.AvroReefServiceInfo"",""fields"":[{""name"":""serviceName"",""type"":""string""},{""name"":""serviceInfo"",""type"":""string""}]}"; + + /// <summary> + /// Gets the schema. + /// </summary> + public static string Schema + { + get + { + return JsonSchema; + } + } + + /// <summary> + /// Gets or sets the serviceName field. + /// </summary> + [DataMember] + public string serviceName { get; set; } + + /// <summary> + /// Gets or sets the serviceInfo field. + /// </summary> + [DataMember] + public string serviceInfo { get; set; } + + /// <summary> + /// Initializes a new instance of the <see cref="AvroReefServiceInfo"/> class. + /// </summary> + public AvroReefServiceInfo() + { + } + + /// <summary> + /// Initializes a new instance of the <see cref="AvroReefServiceInfo"/> class. + /// </summary> + /// <param name="serviceName">The serviceName.</param> + /// <param name="serviceInfo">The serviceInfo.</param> + public AvroReefServiceInfo(string serviceName, string serviceInfo) + { + this.serviceName = serviceName; + this.serviceInfo = serviceInfo; + } + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/CPU.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/CPU.cs b/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/CPU.cs new file mode 100644 index 0000000..4a26a3c --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/CPU.cs @@ -0,0 +1,59 @@ +/** + * 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. + */ + +using System; +using System.Globalization; +using Org.Apache.REEF.Utilities.Logging; + +namespace Org.Apache.REEF.Common.Catalog.Capabilities +{ + public class CPU : ICapability + { + private static readonly Logger LOGGER = Logger.GetLogger(typeof(CPU)); + + private int _cores; + + public CPU(int cores) + { + if (cores <= 0) + { + Org.Apache.REEF.Utilities.Diagnostics.Exceptions.Throw(new ArgumentException("cores cannot be non-positive"), LOGGER); + } + _cores = cores; + } + + public int Cores + { + get + { + return _cores; + } + } + + public override string ToString() + { + return string.Format(CultureInfo.InvariantCulture, "CPU Cores = [{0}]", Cores); + } + + public override int GetHashCode() + { + return Cores.GetHashCode(); + } + } +} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/7edb8570/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/ICapability.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/ICapability.cs b/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/ICapability.cs new file mode 100644 index 0000000..1d1b7da --- /dev/null +++ b/lang/cs/Org.Apache.REEF.Common/Catalog/Capabilities/ICapability.cs @@ -0,0 +1,25 @@ +/** + * 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. + */ + +namespace Org.Apache.REEF.Common.Catalog.Capabilities +{ + public interface ICapability + { + } +}
