You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@reef.apache.org by do...@apache.org on 2015/11/26 07:44:45 UTC
incubator-reef git commit: [REEF-993] Document ClosedContextClr2Java
stack and fix spacing
Repository: incubator-reef
Updated Branches:
refs/heads/master dc5efb9ad -> 05031a0ab
[REEF-993] Document ClosedContextClr2Java stack and fix spacing
This PR adds documents for IClosedContext.cs, ClosedContext.cs,
ClrSystemHandlerWrapper.cs and IClosedContextClr2Java.cs.
Also, it fixes spacing in Clr2JavaImpl.h and ClosedContextClr2Java.cpp.
JIRA:
[REEF-993](https://issues.apache.org/jira/browse/REEF-993)
Pull request:
This closes #667
Project: http://git-wip-us.apache.org/repos/asf/incubator-reef/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-reef/commit/05031a0a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-reef/tree/05031a0a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-reef/diff/05031a0a
Branch: refs/heads/master
Commit: 05031a0ab24cc8ecd49018cf1e7f9d70fc1feb54
Parents: dc5efb9
Author: Andrew Chung <af...@gmail.com>
Authored: Fri Nov 20 13:33:33 2015 -0800
Committer: Dongjoon Hyun <do...@apache.org>
Committed: Thu Nov 26 15:26:29 2015 +0900
----------------------------------------------------------------------
.../ClosedContextClr2Java.cpp | 130 +++---
lang/cs/Org.Apache.REEF.Bridge/Clr2JavaImpl.h | 437 ++++++++++---------
.../Bridge/Clr2java/IClosedContextClr2Java.cs | 17 +
.../Bridge/ClrSystemHandlerWrapper.cs | 5 +
.../Bridge/Events/ClosedContext.cs | 55 ++-
.../Context/IClosedContext.cs | 3 +
6 files changed, 354 insertions(+), 293 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/05031a0a/lang/cs/Org.Apache.REEF.Bridge/ClosedContextClr2Java.cpp
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Bridge/ClosedContextClr2Java.cpp b/lang/cs/Org.Apache.REEF.Bridge/ClosedContextClr2Java.cpp
index 6584abe..b1ea160 100644
--- a/lang/cs/Org.Apache.REEF.Bridge/ClosedContextClr2Java.cpp
+++ b/lang/cs/Org.Apache.REEF.Bridge/ClosedContextClr2Java.cpp
@@ -19,72 +19,90 @@
#include "Clr2JavaImpl.h"
namespace Org {
- namespace Apache {
- namespace REEF {
- namespace Driver {
- namespace Bridge {
- namespace Clr2java {
- ref class ManagedLog {
- internal:
- static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>");
- };
- ClosedContextClr2Java::ClosedContextClr2Java(JNIEnv *env, jobject jobjectClosedContext) {
- ManagedLog::LOGGER->LogStart("ClosedContextClr2Java::ClosedContextClr2Java");
+ namespace Apache {
+ namespace REEF {
+ namespace Driver {
+ namespace Bridge {
+ namespace Clr2java {
+ ref class ManagedLog {
+ internal:
+ static BridgeLogger^ LOGGER = BridgeLogger::GetLogger("<C++>");
+ };
+ ClosedContextClr2Java::ClosedContextClr2Java(JNIEnv *env, jobject jobjectClosedContext) {
+ ManagedLog::LOGGER->LogStart("ClosedContextClr2Java::ClosedContextClr2Java");
- pin_ptr<JavaVM*> pJavaVm = &_jvm;
- if (env->GetJavaVM(pJavaVm) != 0) {
- ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr);
- }
- _jobjectClosedContext = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectClosedContext));
- jclass jclassClosedContext = env->GetObjectClass(_jobjectClosedContext);
+ pin_ptr<JavaVM*> pJavaVm = &_jvm;
+ if (env->GetJavaVM(pJavaVm) != 0) {
+ ManagedLog::LOGGER->LogError("Failed to get JavaVM", nullptr);
+ }
- jfieldID jidContextId = env->GetFieldID(jclassClosedContext, "contextId", "Ljava/lang/String;");
- jfieldID jidEvaluatorId = env->GetFieldID(jclassClosedContext, "evaluatorId", "Ljava/lang/String;");
+ // Gets the Java closed context class to get its fields
+ _jobjectClosedContext = reinterpret_cast<jobject>(env->NewGlobalRef(jobjectClosedContext));
+ jclass jclassClosedContext = env->GetObjectClass(_jobjectClosedContext);
- _jstringContextId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectClosedContext, jidContextId)));
- _jstringEvaluatorId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectClosedContext, jidEvaluatorId)));
+ // Gets the Java fields in order to get the field values from the actual Java objects of the field.
+ // TODO[JIRA REEF-986]: Switch to get method call.
+ jfieldID jidContextId = env->GetFieldID(jclassClosedContext, "contextId", "Ljava/lang/String;");
+ jfieldID jidEvaluatorId = env->GetFieldID(jclassClosedContext, "evaluatorId", "Ljava/lang/String;");
- ManagedLog::LOGGER->LogStop("ClosedContextClr2Java::ClosedContextClr2Java");
- }
+ // Gets the Context ID and Evaluator ID of the closed context from the Java closed context object.
+ _jstringContextId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectClosedContext, jidContextId)));
+ _jstringEvaluatorId = reinterpret_cast<jstring>(env->NewGlobalRef(env->GetObjectField(_jobjectClosedContext, jidEvaluatorId)));
- IActiveContextClr2Java^ ClosedContextClr2Java::GetParentContext() {
- ManagedLog::LOGGER->LogStart("ClosedContextClr2Java::GetParentContext");
+ ManagedLog::LOGGER->LogStop("ClosedContextClr2Java::ClosedContextClr2Java");
+ }
- JNIEnv *env = RetrieveEnv(_jvm);
+ /**
+ Gets the Parent context of the closed context through a JNI call to Java.
+ */
+ IActiveContextClr2Java^ ClosedContextClr2Java::GetParentContext() {
+ ManagedLog::LOGGER->LogStart("ClosedContextClr2Java::GetParentContext");
- jclass jclassClosedContext = env->GetObjectClass(_jobjectClosedContext);
- jfieldID jidParentContext = env->GetFieldID(jclassClosedContext, "parentContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;");
- jobject jobjectParentContext = env->GetObjectField(_jobjectClosedContext, jidParentContext);
- ManagedLog::LOGGER->LogStop("ClosedContextClr2Java::GetParentContext");
+ JNIEnv *env = RetrieveEnv(_jvm);
- return gcnew ActiveContextClr2Java(env, jobjectParentContext);
- }
+ // TODO[JIRA REEF-986]: Switch to get method call.
+ jclass jclassClosedContext = env->GetObjectClass(_jobjectClosedContext);
+ jfieldID jidParentContext = env->GetFieldID(jclassClosedContext, "parentContext", "Lorg/apache/reef/javabridge/ActiveContextBridge;");
+ jobject jobjectParentContext = env->GetObjectField(_jobjectClosedContext, jidParentContext);
+ ManagedLog::LOGGER->LogStop("ClosedContextClr2Java::GetParentContext");
- String^ ClosedContextClr2Java::GetId() {
- ManagedLog::LOGGER->Log("ClosedContextClr2Java::GetId");
- JNIEnv *env = RetrieveEnv(_jvm);
- return ManagedStringFromJavaString(env, _jstringContextId);
- }
+ return gcnew ActiveContextClr2Java(env, jobjectParentContext);
+ }
- String^ ClosedContextClr2Java::GetEvaluatorId() {
- ManagedLog::LOGGER->Log("ClosedContextClr2Java::GetEvaluatorId");
- JNIEnv *env = RetrieveEnv(_jvm);
- return ManagedStringFromJavaString(env, _jstringEvaluatorId);
- }
+ /**
+ Gets the ID of the closed context from Java.
+ */
+ String^ ClosedContextClr2Java::GetId() {
+ ManagedLog::LOGGER->Log("ClosedContextClr2Java::GetId");
+ JNIEnv *env = RetrieveEnv(_jvm);
+ return ManagedStringFromJavaString(env, _jstringContextId);
+ }
- IEvaluatorDescriptor^ ClosedContextClr2Java::GetEvaluatorDescriptor() {
- ManagedLog::LOGGER->LogStart("ClosedContextClr2Java::GetEvaluatorDescriptor");
- return CommonUtilities::RetrieveEvaluatorDescriptor(_jobjectClosedContext, _jvm);
- }
+ /**
+ Gets the Evaluator ID of the Evaluator on which the Closed Context was active.
+ */
+ String^ ClosedContextClr2Java::GetEvaluatorId() {
+ ManagedLog::LOGGER->Log("ClosedContextClr2Java::GetEvaluatorId");
+ JNIEnv *env = RetrieveEnv(_jvm);
+ return ManagedStringFromJavaString(env, _jstringEvaluatorId);
+ }
- void ClosedContextClr2Java::OnError(String^ message) {
- ManagedLog::LOGGER->Log("ClosedContextClr2Java::OnError");
- JNIEnv *env = RetrieveEnv(_jvm);
- HandleClr2JavaError(env, message, _jobjectClosedContext);
- }
- }
- }
- }
- }
- }
+ /**
+ Gets the EvaluatorDescriptor of the Evaluator on which the Closed Context was active.
+ */
+ IEvaluatorDescriptor^ ClosedContextClr2Java::GetEvaluatorDescriptor() {
+ ManagedLog::LOGGER->LogStart("ClosedContextClr2Java::GetEvaluatorDescriptor");
+ return CommonUtilities::RetrieveEvaluatorDescriptor(_jobjectClosedContext, _jvm);
+ }
+
+ void ClosedContextClr2Java::OnError(String^ message) {
+ ManagedLog::LOGGER->Log("ClosedContextClr2Java::OnError");
+ JNIEnv *env = RetrieveEnv(_jvm);
+ HandleClr2JavaError(env, message, _jobjectClosedContext);
+ }
+ }
+ }
+ }
+ }
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/05031a0a/lang/cs/Org.Apache.REEF.Bridge/Clr2JavaImpl.h
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Bridge/Clr2JavaImpl.h b/lang/cs/Org.Apache.REEF.Bridge/Clr2JavaImpl.h
index 0158868..aa3a0e3 100644
--- a/lang/cs/Org.Apache.REEF.Bridge/Clr2JavaImpl.h
+++ b/lang/cs/Org.Apache.REEF.Bridge/Clr2JavaImpl.h
@@ -31,221 +31,224 @@ using namespace Org::Apache::REEF::Driver::Bridge;
using namespace Org::Apache::REEF::Driver::Evaluator;
namespace Org {
- namespace Apache {
- namespace REEF {
- namespace Driver {
- namespace Bridge {
- namespace Clr2java {
- public ref class CommonUtilities {
- public:
- static IEvaluatorDescriptor^ RetrieveEvaluatorDescriptor(jobject object, JavaVM* jvm);
- };
-
- public ref class AllocatedEvaluatorClr2Java : public IAllocatedEvaluaotrClr2Java {
- jobject _jobjectAllocatedEvaluator;
- JavaVM* _jvm;
- jstring _jstringId;
- jstring _jstringNameServerInfo;
- public:
- AllocatedEvaluatorClr2Java(JNIEnv *env, jobject jallocatedEvaluator);
- virtual void SubmitContextAndTask(String^ contextConfigStr, String^ taskConfigStr);
- virtual void SubmitContext(String^ contextConfigStr);
- virtual void SubmitContextAndService(String^ contextConfigStr, String^ serviceConfigStr);
- virtual void SubmitContextAndServiceAndTask(String^ contextConfigStr, String^ serviceConfigStr, String^ taskConfigStr);
- virtual void OnError(String^ message);
- virtual void Close();
- virtual String^ GetId();
- virtual String^ GetNameServerInfo();
- virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
- };
-
- public ref class ActiveContextClr2Java : public IActiveContextClr2Java {
- jobject _jobjectActiveContext;
- jstring _jstringId;
- jstring _jstringEvaluatorId;
- JavaVM* _jvm;
- public:
- ActiveContextClr2Java(JNIEnv *env, jobject jallocatedEvaluator);
- virtual void SubmitTask(String^ taskConfigStr);
- virtual void Close();
- virtual void OnError(String^ message);
- virtual String^ GetId();
- virtual String^ GetEvaluatorId();
- virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
- virtual void SendMessage(array<byte>^ message);
- };
-
- public ref class EvaluatorRequestorClr2Java : public IEvaluatorRequestorClr2Java {
- jobject _jobjectEvaluatorRequestor;
- JavaVM* _jvm;
- public:
- EvaluatorRequestorClr2Java(JNIEnv *env, jobject jevaluatorRequestor);
- virtual void OnError(String^ message);
- virtual void Submit(IEvaluatorRequest^ request);
- };
-
- public ref class TaskMessageClr2Java : public ITaskMessageClr2Java {
- jobject _jobjectTaskMessage;
- JavaVM* _jvm;
- jstring _jstringId;
- public:
- TaskMessageClr2Java(JNIEnv *env, jobject jtaskMessage);
- virtual void OnError(String^ message);
- virtual String^ GetId();
- };
-
- public ref class FailedTaskClr2Java : public IFailedTaskClr2Java {
- jobject _jobjectFailedTask;
- JavaVM* _jvm;
- public:
- FailedTaskClr2Java(JNIEnv *env, jobject jfailedTask);
- virtual void OnError(String^ message);
- virtual IActiveContextClr2Java^ GetActiveContext();
- virtual String^ GetString();
- };
-
- public ref class RunningTaskClr2Java : public IRunningTaskClr2Java {
- jobject _jobjectRunningTask;
- JavaVM* _jvm;
- jstring _jstringId;
- public:
- RunningTaskClr2Java(JNIEnv *env, jobject jrunningTask);
- virtual void OnError(String^ message);
- virtual IActiveContextClr2Java^ GetActiveContext();
- virtual String^ GetId();
- virtual void Send(array<byte>^ message);
- };
-
- public ref class FailedEvaluatorClr2Java : public IFailedEvaluatorClr2Java {
- jobject _jobjectFailedEvaluator;
- JavaVM* _jvm;
- jstring _jstringId;
- public:
- FailedEvaluatorClr2Java(JNIEnv *env, jobject jfailedEvaluator);
- virtual void OnError(String^ message);
- virtual IEvaluatorRequestorClr2Java^ GetEvaluatorRequestor();
- virtual String^ GetId();
- };
-
- public ref class HttpServerClr2Java : public IHttpServerBridgeClr2Java {
- jobject _jhttpServerEventBridge;
- JavaVM* _jvm;
- public:
- HttpServerClr2Java(JNIEnv *env, jobject jhttpServerEventBridge);
- virtual void OnError(String^ message);
- virtual String^ GetQueryString();
- virtual void SetUriSpecification(String^ uriSpecification);
- virtual void SetQueryResult(String^ queryResult);
- virtual array<byte>^ GetQueryRequestData();
- virtual void SetQueryResponseData(array<byte>^ responseData);
- };
-
- public ref class CompletedTaskClr2Java : public ICompletedTaskClr2Java {
- jobject _jobjectCompletedTask;
- JavaVM* _jvm;
- jstring _jstringId;
- public:
- CompletedTaskClr2Java(JNIEnv *env, jobject jcompletedTask);
- virtual void OnError(String^ message);
- virtual IActiveContextClr2Java^ GetActiveContext();
- virtual String^ GetId();
- virtual array<byte>^ Get();
- };
-
- public ref class SuspendedTaskClr2Java : public ISuspendedTaskClr2Java {
- jobject _jobjectSuspendedTask;
- JavaVM* _jvm;
- jstring _jstringId;
- public:
- SuspendedTaskClr2Java(JNIEnv *env, jobject jobjectSuspendedTask);
- virtual void OnError(String^ message);
- virtual IActiveContextClr2Java^ GetActiveContext();
- virtual String^ GetId();
- virtual array<byte>^ Get();
- };
-
- public ref class CompletedEvaluatorClr2Java : public ICompletedEvaluatorClr2Java {
- jobject _jobjectCompletedEvaluator;
- JavaVM* _jvm;
- jstring _jstringId;
- public:
- CompletedEvaluatorClr2Java(JNIEnv *env, jobject jobjectCompletedEvaluator);
- virtual void OnError(String^ message);
- virtual String^ GetId();
- };
-
- public ref class ClosedContextClr2Java : public IClosedContextClr2Java {
- jobject _jobjectClosedContext;
- JavaVM* _jvm;
- jstring _jstringContextId;
- jstring _jstringEvaluatorId;
- public:
- ClosedContextClr2Java(JNIEnv *env, jobject jobjectClosedContext);
- virtual void OnError(String^ message);
- virtual String^ GetId();
- virtual String^ GetEvaluatorId();
- virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
- virtual IActiveContextClr2Java^ GetParentContext();
- };
-
- public ref class FailedContextClr2Java : public IFailedContextClr2Java {
- jobject _jobjectFailedContext;
- JavaVM* _jvm;
- jstring _jstringContextId;
- jstring _jstringEvaluatorId;
- jstring _jstringParentContextId;
- public:
- FailedContextClr2Java(JNIEnv *env, jobject jobjectFailedContext);
- virtual void OnError(String^ message);
- virtual String^ GetId();
- virtual String^ GetEvaluatorId();
- virtual String^ GetParentId();
- virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
- virtual IActiveContextClr2Java^ GetParentContext();
- };
-
- public ref class ContextMessageClr2Java : public IContextMessageClr2Java {
- jobject _jobjectContextMessage;
- JavaVM* _jvm;
- jbyteArray _jarrayMessage;
- jstring _jstringId;
- jstring _jstringSourceId;
- public:
- ContextMessageClr2Java(JNIEnv *env, jobject jobjectContextMessage);
- virtual void OnError(String^ message);
- virtual array<byte>^ Get();
- virtual String^ GetId();
- virtual String^ GetMessageSourceId();
- };
-
- public ref class DriverRestartedClr2Java : public IDriverRestartedClr2Java {
- jobject _jobjectDriverRestarted;
- JavaVM* _jvm;
- array<String^>^ _expectedEvaluatorIds;
- DateTime _startTime;
- int _resubmissionAttempts;
- public:
- DriverRestartedClr2Java(JNIEnv *env, jobject jobjectDriverRestarted);
- virtual void OnError(String^ message);
- virtual array<String^>^ GetExpectedEvaluatorIds();
- virtual DateTime GetStartTime();
- virtual int GetResubmissionAttempts();
- };
-
- public ref class DriverRestartCompletedClr2Java : public IDriverRestartCompletedClr2Java {
- jobject _jobjectDriverRestartCompleted;
- JavaVM* _jvm;
- DateTime _restartCompletedTime;
- bool _isTimedOut;
- public:
- DriverRestartCompletedClr2Java(JNIEnv *env, jobject jobobjectDriverRestartCompleted);
- virtual void OnError(String^ message);
- virtual DateTime GetCompletedTime();
- virtual bool IsTimedOut();
- };
- }
- }
- }
- }
- }
+ namespace Apache {
+ namespace REEF {
+ namespace Driver {
+ namespace Bridge {
+ namespace Clr2java {
+ public ref class CommonUtilities {
+ public:
+ static IEvaluatorDescriptor^ RetrieveEvaluatorDescriptor(jobject object, JavaVM* jvm);
+ };
+
+ public ref class AllocatedEvaluatorClr2Java : public IAllocatedEvaluaotrClr2Java {
+ jobject _jobjectAllocatedEvaluator;
+ JavaVM* _jvm;
+ jstring _jstringId;
+ jstring _jstringNameServerInfo;
+ public:
+ AllocatedEvaluatorClr2Java(JNIEnv *env, jobject jallocatedEvaluator);
+ virtual void SubmitContextAndTask(String^ contextConfigStr, String^ taskConfigStr);
+ virtual void SubmitContext(String^ contextConfigStr);
+ virtual void SubmitContextAndService(String^ contextConfigStr, String^ serviceConfigStr);
+ virtual void SubmitContextAndServiceAndTask(String^ contextConfigStr, String^ serviceConfigStr, String^ taskConfigStr);
+ virtual void OnError(String^ message);
+ virtual void Close();
+ virtual String^ GetId();
+ virtual String^ GetNameServerInfo();
+ virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
+ };
+
+ public ref class ActiveContextClr2Java : public IActiveContextClr2Java {
+ jobject _jobjectActiveContext;
+ jstring _jstringId;
+ jstring _jstringEvaluatorId;
+ JavaVM* _jvm;
+ public:
+ ActiveContextClr2Java(JNIEnv *env, jobject jallocatedEvaluator);
+ virtual void SubmitTask(String^ taskConfigStr);
+ virtual void Close();
+ virtual void OnError(String^ message);
+ virtual String^ GetId();
+ virtual String^ GetEvaluatorId();
+ virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
+ virtual void SendMessage(array<byte>^ message);
+ };
+
+ public ref class EvaluatorRequestorClr2Java : public IEvaluatorRequestorClr2Java {
+ jobject _jobjectEvaluatorRequestor;
+ JavaVM* _jvm;
+ public:
+ EvaluatorRequestorClr2Java(JNIEnv *env, jobject jevaluatorRequestor);
+ virtual void OnError(String^ message);
+ virtual void Submit(IEvaluatorRequest^ request);
+ };
+
+ public ref class TaskMessageClr2Java : public ITaskMessageClr2Java {
+ jobject _jobjectTaskMessage;
+ JavaVM* _jvm;
+ jstring _jstringId;
+ public:
+ TaskMessageClr2Java(JNIEnv *env, jobject jtaskMessage);
+ virtual void OnError(String^ message);
+ virtual String^ GetId();
+ };
+
+ public ref class FailedTaskClr2Java : public IFailedTaskClr2Java {
+ jobject _jobjectFailedTask;
+ JavaVM* _jvm;
+ public:
+ FailedTaskClr2Java(JNIEnv *env, jobject jfailedTask);
+ virtual void OnError(String^ message);
+ virtual IActiveContextClr2Java^ GetActiveContext();
+ virtual String^ GetString();
+ };
+
+ public ref class RunningTaskClr2Java : public IRunningTaskClr2Java {
+ jobject _jobjectRunningTask;
+ JavaVM* _jvm;
+ jstring _jstringId;
+ public:
+ RunningTaskClr2Java(JNIEnv *env, jobject jrunningTask);
+ virtual void OnError(String^ message);
+ virtual IActiveContextClr2Java^ GetActiveContext();
+ virtual String^ GetId();
+ virtual void Send(array<byte>^ message);
+ };
+
+ public ref class FailedEvaluatorClr2Java : public IFailedEvaluatorClr2Java {
+ jobject _jobjectFailedEvaluator;
+ JavaVM* _jvm;
+ jstring _jstringId;
+ public:
+ FailedEvaluatorClr2Java(JNIEnv *env, jobject jfailedEvaluator);
+ virtual void OnError(String^ message);
+ virtual IEvaluatorRequestorClr2Java^ GetEvaluatorRequestor();
+ virtual String^ GetId();
+ };
+
+ public ref class HttpServerClr2Java : public IHttpServerBridgeClr2Java {
+ jobject _jhttpServerEventBridge;
+ JavaVM* _jvm;
+ public:
+ HttpServerClr2Java(JNIEnv *env, jobject jhttpServerEventBridge);
+ virtual void OnError(String^ message);
+ virtual String^ GetQueryString();
+ virtual void SetUriSpecification(String^ uriSpecification);
+ virtual void SetQueryResult(String^ queryResult);
+ virtual array<byte>^ GetQueryRequestData();
+ virtual void SetQueryResponseData(array<byte>^ responseData);
+ };
+
+ public ref class CompletedTaskClr2Java : public ICompletedTaskClr2Java {
+ jobject _jobjectCompletedTask;
+ JavaVM* _jvm;
+ jstring _jstringId;
+ public:
+ CompletedTaskClr2Java(JNIEnv *env, jobject jcompletedTask);
+ virtual void OnError(String^ message);
+ virtual IActiveContextClr2Java^ GetActiveContext();
+ virtual String^ GetId();
+ virtual array<byte>^ Get();
+ };
+
+ public ref class SuspendedTaskClr2Java : public ISuspendedTaskClr2Java {
+ jobject _jobjectSuspendedTask;
+ JavaVM* _jvm;
+ jstring _jstringId;
+ public:
+ SuspendedTaskClr2Java(JNIEnv *env, jobject jobjectSuspendedTask);
+ virtual void OnError(String^ message);
+ virtual IActiveContextClr2Java^ GetActiveContext();
+ virtual String^ GetId();
+ virtual array<byte>^ Get();
+ };
+
+ public ref class CompletedEvaluatorClr2Java : public ICompletedEvaluatorClr2Java {
+ jobject _jobjectCompletedEvaluator;
+ JavaVM* _jvm;
+ jstring _jstringId;
+ public:
+ CompletedEvaluatorClr2Java(JNIEnv *env, jobject jobjectCompletedEvaluator);
+ virtual void OnError(String^ message);
+ virtual String^ GetId();
+ };
+
+ /**
+ See IClosedContextClr2Java.
+ */
+ public ref class ClosedContextClr2Java : public IClosedContextClr2Java {
+ jobject _jobjectClosedContext;
+ JavaVM* _jvm;
+ jstring _jstringContextId;
+ jstring _jstringEvaluatorId;
+ public:
+ ClosedContextClr2Java(JNIEnv *env, jobject jobjectClosedContext);
+ virtual void OnError(String^ message);
+ virtual String^ GetId();
+ virtual String^ GetEvaluatorId();
+ virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
+ virtual IActiveContextClr2Java^ GetParentContext();
+ };
+
+ public ref class FailedContextClr2Java : public IFailedContextClr2Java {
+ jobject _jobjectFailedContext;
+ JavaVM* _jvm;
+ jstring _jstringContextId;
+ jstring _jstringEvaluatorId;
+ jstring _jstringParentContextId;
+ public:
+ FailedContextClr2Java(JNIEnv *env, jobject jobjectFailedContext);
+ virtual void OnError(String^ message);
+ virtual String^ GetId();
+ virtual String^ GetEvaluatorId();
+ virtual String^ GetParentId();
+ virtual IEvaluatorDescriptor^ GetEvaluatorDescriptor();
+ virtual IActiveContextClr2Java^ GetParentContext();
+ };
+
+ public ref class ContextMessageClr2Java : public IContextMessageClr2Java {
+ jobject _jobjectContextMessage;
+ JavaVM* _jvm;
+ jbyteArray _jarrayMessage;
+ jstring _jstringId;
+ jstring _jstringSourceId;
+ public:
+ ContextMessageClr2Java(JNIEnv *env, jobject jobjectContextMessage);
+ virtual void OnError(String^ message);
+ virtual array<byte>^ Get();
+ virtual String^ GetId();
+ virtual String^ GetMessageSourceId();
+ };
+
+ public ref class DriverRestartedClr2Java : public IDriverRestartedClr2Java {
+ jobject _jobjectDriverRestarted;
+ JavaVM* _jvm;
+ array<String^>^ _expectedEvaluatorIds;
+ DateTime _startTime;
+ int _resubmissionAttempts;
+ public:
+ DriverRestartedClr2Java(JNIEnv *env, jobject jobjectDriverRestarted);
+ virtual void OnError(String^ message);
+ virtual array<String^>^ GetExpectedEvaluatorIds();
+ virtual DateTime GetStartTime();
+ virtual int GetResubmissionAttempts();
+ };
+
+ public ref class DriverRestartCompletedClr2Java : public IDriverRestartCompletedClr2Java {
+ jobject _jobjectDriverRestartCompleted;
+ JavaVM* _jvm;
+ DateTime _restartCompletedTime;
+ bool _isTimedOut;
+ public:
+ DriverRestartCompletedClr2Java(JNIEnv *env, jobject jobobjectDriverRestartCompleted);
+ virtual void OnError(String^ message);
+ virtual DateTime GetCompletedTime();
+ virtual bool IsTimedOut();
+ };
+ }
+ }
+ }
+ }
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/05031a0a/lang/cs/Org.Apache.REEF.Driver/Bridge/Clr2java/IClosedContextClr2Java.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Driver/Bridge/Clr2java/IClosedContextClr2Java.cs b/lang/cs/Org.Apache.REEF.Driver/Bridge/Clr2java/IClosedContextClr2Java.cs
index 7677a41..06c46c4 100644
--- a/lang/cs/Org.Apache.REEF.Driver/Bridge/Clr2java/IClosedContextClr2Java.cs
+++ b/lang/cs/Org.Apache.REEF.Driver/Bridge/Clr2java/IClosedContextClr2Java.cs
@@ -21,14 +21,31 @@ using Org.Apache.REEF.Driver.Evaluator;
namespace Org.Apache.REEF.Driver.Bridge.Clr2java
{
+ /// <summary>
+ /// A closed context event from Java.
+ /// </summary>
public interface IClosedContextClr2Java : IClr2Java
{
+ /// <summary>
+ /// Gets the ID of the closed context.
+ /// </summary>
string GetId();
+ /// <summary>
+ /// Gets the Evaluator ID of the closed context.
+ /// </summary>
string GetEvaluatorId();
+ /// <summary>
+ /// Gets the <see cref="IEvaluatorDescriptor"/> that describes properties
+ /// of the Evaluator of the closed context.
+ /// </summary>
IEvaluatorDescriptor GetEvaluatorDescriptor();
+ /// <summary>
+ /// Gets the parent context of closed context.
+ /// </summary>
+ /// <returns></returns>
IActiveContextClr2Java GetParentContext();
}
}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/05031a0a/lang/cs/Org.Apache.REEF.Driver/Bridge/ClrSystemHandlerWrapper.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Driver/Bridge/ClrSystemHandlerWrapper.cs b/lang/cs/Org.Apache.REEF.Driver/Bridge/ClrSystemHandlerWrapper.cs
index 9e2078f..b020728 100644
--- a/lang/cs/Org.Apache.REEF.Driver/Bridge/ClrSystemHandlerWrapper.cs
+++ b/lang/cs/Org.Apache.REEF.Driver/Bridge/ClrSystemHandlerWrapper.cs
@@ -181,6 +181,11 @@ namespace Org.Apache.REEF.Driver.Bridge
}
}
+ /// <summary>
+ /// Invokes event handlers registered to the closed context event.
+ /// </summary>
+ /// <param name="handle">Pointer to the event handler object</param>
+ /// <param name="clr2Java">Proxy object to the Java closed context.</param>
public static void Call_ClrSystemClosedContext_OnNext(ulong handle, IClosedContextClr2Java clr2Java)
{
using (LOGGER.LogFunction("ClrSystemHandlerWrapper::Call_ClrSystemClosedContext_OnNext"))
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/05031a0a/lang/cs/Org.Apache.REEF.Driver/Bridge/Events/ClosedContext.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Driver/Bridge/Events/ClosedContext.cs b/lang/cs/Org.Apache.REEF.Driver/Bridge/Events/ClosedContext.cs
index 27f90fa..5a2f9c0 100644
--- a/lang/cs/Org.Apache.REEF.Driver/Bridge/Events/ClosedContext.cs
+++ b/lang/cs/Org.Apache.REEF.Driver/Bridge/Events/ClosedContext.cs
@@ -26,48 +26,63 @@ using Org.Apache.REEF.Utilities;
namespace Org.Apache.REEF.Driver.Bridge.Events
{
+ /// <summary>
+ /// A proxy for method calls to Java's ClosedContext.
+ /// </summary>
internal sealed class ClosedContext : IClosedContext
{
- private readonly string _evaluatorId;
- private readonly string _id;
+ private readonly IActiveContextClr2Java _parentContextClr2Java;
internal ClosedContext(IClosedContextClr2Java clr2java)
{
InstanceId = Guid.NewGuid().ToString("N");
- _id = clr2java.GetId();
- _evaluatorId = clr2java.GetEvaluatorId();
+ Id = clr2java.GetId();
+ EvaluatorId = clr2java.GetEvaluatorId();
+ EvaluatorDescriptor = clr2java.GetEvaluatorDescriptor();
+
+ // TODO[JIRA REEF-762]: populate this
+ _parentContextClr2Java = null;
}
+ /// <summary>
+ /// An ID for the ClosedContext instance.
+ /// </summary>
[DataMember]
public string InstanceId { get; private set; }
- private IActiveContextClr2Java ParentContextClr2Java { get; set; }
- private IClosedContextClr2Java ClosedContextClr2JavaClr2Java { get; set; }
-
- public string Id
- {
- get { return _id; }
- }
+ /// <summary>
+ /// Gets the ID of the closed context.
+ /// </summary>
+ public string Id { get; private set; }
- public string EvaluatorId
- {
- get { return _evaluatorId; }
- }
+ /// <summary>
+ /// Gets the ID of the Evaluator on which the context was closed.
+ /// </summary>
+ public string EvaluatorId { get; private set; }
+ /// <summary>
+ /// Gets the ID of the parent context of the closed context.
+ /// </summary>
public Optional<string> ParentId
{
// TODO[REEF-762]: Implement
get { return Optional<string>.Empty(); }
}
- public IEvaluatorDescriptor EvaluatorDescriptor
- {
- get { return ClosedContextClr2JavaClr2Java.GetEvaluatorDescriptor(); }
- }
+ /// <summary>
+ /// Gets the <see cref="IEvaluatorDescriptor"/> of the Evaluator on which
+ /// the context was closed.
+ /// </summary>
+ public IEvaluatorDescriptor EvaluatorDescriptor { get; private set; }
+ /// <summary>
+ /// Gest the <see cref="IActiveContext"/> of the parent context of the
+ /// closed context.
+ /// </summary>
public IActiveContext ParentContext
{
- get { return new ActiveContext(ParentContextClr2Java); }
+ // TODO[JIRA REEF-762]: make sure this doesn't fail.
+ get { return new ActiveContext(_parentContextClr2Java); }
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/05031a0a/lang/cs/Org.Apache.REEF.Driver/Context/IClosedContext.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Driver/Context/IClosedContext.cs b/lang/cs/Org.Apache.REEF.Driver/Context/IClosedContext.cs
index 365ff10..7ae5443 100644
--- a/lang/cs/Org.Apache.REEF.Driver/Context/IClosedContext.cs
+++ b/lang/cs/Org.Apache.REEF.Driver/Context/IClosedContext.cs
@@ -19,6 +19,9 @@
namespace Org.Apache.REEF.Driver.Context
{
+ /// <summary>
+ /// A closed context.
+ /// </summary>
public interface IClosedContext : IContext
{
/// <summary>