You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@systemml.apache.org by mb...@apache.org on 2018/02/17 05:32:39 UTC

systemml git commit: [MINOR] Extended JMLC API (pass global dml config before prepareScript)

Repository: systemml
Updated Branches:
  refs/heads/master 3d5dbe429 -> 5e3fed25b


[MINOR] Extended JMLC API (pass global dml config before prepareScript)

Project: http://git-wip-us.apache.org/repos/asf/systemml/repo
Commit: http://git-wip-us.apache.org/repos/asf/systemml/commit/5e3fed25
Tree: http://git-wip-us.apache.org/repos/asf/systemml/tree/5e3fed25
Diff: http://git-wip-us.apache.org/repos/asf/systemml/diff/5e3fed25

Branch: refs/heads/master
Commit: 5e3fed25b55e60a017597fc2c8c6721e2096f056
Parents: 3d5dbe4
Author: Matthias Boehm <mb...@gmail.com>
Authored: Fri Feb 16 21:32:22 2018 -0800
Committer: Matthias Boehm <mb...@gmail.com>
Committed: Fri Feb 16 21:32:22 2018 -0800

----------------------------------------------------------------------
 .../org/apache/sysml/api/jmlc/Connection.java   | 68 ++++++++++++++------
 1 file changed, 48 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/systemml/blob/5e3fed25/src/main/java/org/apache/sysml/api/jmlc/Connection.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/api/jmlc/Connection.java b/src/main/java/org/apache/sysml/api/jmlc/Connection.java
index be75a95..7940bc5 100644
--- a/src/main/java/org/apache/sysml/api/jmlc/Connection.java
+++ b/src/main/java/org/apache/sysml/api/jmlc/Connection.java
@@ -103,8 +103,52 @@ public class Connection implements Closeable
 	 * Connection constructor, the starting point for any other JMLC API calls.
 	 * 
 	 */
-	public Connection()
-	{
+	public Connection() {
+		 //with default dml configuration
+		this(new DMLConfig());
+	}
+	
+	/**
+	 * Connection constructor, the starting point for any other JMLC API calls.
+	 * This variant allows to enable a set of boolean compiler configurations.
+	 * 
+	 * @param cconfigs one or many boolean compiler configurations to enable.
+	 */
+	public Connection(CompilerConfig.ConfigType... cconfigs) {
+		//basic constructor, which also constructs the compiler config
+		this(new DMLConfig()); //with default dml configuration
+		
+		//set optional compiler configurations in current config
+		for( ConfigType configType : cconfigs )
+			_cconf.set(configType, true);
+		setLocalConfigs();
+	}
+	
+	/**
+	 * Connection constructor, the starting point for any other JMLC API calls.
+	 * This variant allows to pass a global dml configuration and enable a set
+	 * of boolean compiler configurations.
+	 * 
+	 * @param dmlconfig a dml configuration.
+	 * @param cconfigs one or many boolean compiler configurations to enable.
+	 */
+	public Connection(DMLConfig dmlconfig, CompilerConfig.ConfigType... cconfigs) {
+		//basic constructor, which also constructs the compiler config
+		this(dmlconfig); 
+		
+		//set optional compiler configurations in current config
+		for( ConfigType configType : cconfigs )
+			_cconf.set(configType, true);
+		setLocalConfigs();
+	}
+	
+	/**
+	 * Connection constructor, the starting point for any other JMLC API calls.
+	 * This variant allows to pass a global dml configuration.
+	 * 
+	 * @param dmlconfig a dml configuration.
+	 */
+	public Connection(DMLConfig dmlconfig) {
 		DMLScript.rtplatform = RUNTIME_PLATFORM.SINGLE_NODE;
 		
 		//setup basic parameters for embedded execution
@@ -129,29 +173,13 @@ public class Connection implements Closeable
 		//disable caching globally 
 		CacheableData.disableCaching();
 		
-		//create default configuration
-		_dmlconf = new DMLConfig();
+		//assign the given configuration
+		_dmlconf = dmlconfig;
 		
 		setLocalConfigs();
 	}
 	
 	/**
-	 * Connection constructor, the starting point for any other JMLC API calls.
-	 * This variant allows to enable a set of boolean compiler configurations.
-	 * 
-	 * @param configs one or many boolean compiler configurations to enable.
-	 */
-	public Connection(CompilerConfig.ConfigType... configs) {
-		//basic constructor, which also constructs the compiler config
-		this();
-		
-		//set optional compiler configurations in current config
-		for( ConfigType configType : configs )
-			_cconf.set(configType, true);
-		setLocalConfigs();
-	}
-	
-	/**
 	 * Prepares (precompiles) a script and registers input and output variables.
 	 * 
 	 * @param script string representing the DML or PyDML script