Repository: incubator-reef
Updated Branches:
  refs/heads/master a8ebe24e5 -> b4152d7db


[REEF-304]: Cache loaded ClassHierarchy in ActiveContextBridge

This addressed the issue by only loading Class Hierarchy once in the
constructor

JIRA:
  [REEF-304](https://issues.apache.org/jira/browse/REEF-304)

Pull Request:
  This closes #176


Project: http://git-wip-us.apache.org/repos/asf/incubator-reef/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-reef/commit/b4152d7d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-reef/tree/b4152d7d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-reef/diff/b4152d7d

Branch: refs/heads/master
Commit: b4152d7dbb3f6ca01769fc390a42728b787af79c
Parents: a8ebe24
Author: Andrew Chung <[email protected]>
Authored: Tue May 5 23:03:42 2015 -0700
Committer: Markus Weimer <[email protected]>
Committed: Wed May 6 08:59:22 2015 -0700

----------------------------------------------------------------------
 .../apache/reef/javabridge/ActiveContextBridge.java | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/b4152d7d/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/ActiveContextBridge.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/ActiveContextBridge.java
 
b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/ActiveContextBridge.java
index a0dedf5..b374e73 100644
--- 
a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/ActiveContextBridge.java
+++ 
b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/ActiveContextBridge.java
@@ -30,27 +30,25 @@ import java.util.logging.Logger;
 public class ActiveContextBridge extends NativeBridge implements Identifiable {
   private static final Logger LOG = 
Logger.getLogger(ActiveContextBridge.class.getName());
 
-  private ActiveContext jactiveContext;
-
-  private AvroConfigurationSerializer serializer;
-
-  private String contextId;
-
-  private String evaluatorId;
+  private final ActiveContext jactiveContext;
+  private final AvroConfigurationSerializer serializer;
+  private final String contextId;
+  private final String evaluatorId;
+  private final ClassHierarchy clrClassHierarchy;
 
   public ActiveContextBridge(ActiveContext activeContext) {
     jactiveContext = activeContext;
     serializer = new AvroConfigurationSerializer();
     contextId = activeContext.getId();
     evaluatorId = activeContext.getEvaluatorId();
+    clrClassHierarchy = 
Utilities.loadClassHierarchy(NativeInterop.CLASS_HIERARCHY_FILENAME);
   }
 
   public void submitTaskString(final String taskConfigurationString) {
-
     if (taskConfigurationString.isEmpty()) {
       throw new RuntimeException("empty taskConfigurationString provided.");
     }
-    ClassHierarchy clrClassHierarchy = 
Utilities.loadClassHierarchy(NativeInterop.CLASS_HIERARCHY_FILENAME);
+
     Configuration taskConfiguration;
     try {
       taskConfiguration = serializer.fromString(taskConfigurationString, 
clrClassHierarchy);

Reply via email to