Transport Config Util
diff --git a/agent/service/src/main/java/org/apache/airavata/mft/agent/TransportConfig.java b/agent/service/src/main/java/org/apache/airavata/mft/agent/TransportConfig.java
index 9e12970..3de940c 100644
--- a/agent/service/src/main/java/org/apache/airavata/mft/agent/TransportConfig.java
+++ b/agent/service/src/main/java/org/apache/airavata/mft/agent/TransportConfig.java
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
 package org.apache.airavata.mft.agent;
 
 import org.springframework.boot.context.properties.ConfigurationProperties;
diff --git a/agent/service/src/main/resources/agent-application.properties b/agent/service/src/main/resources/agent-application.properties
index f28d6b3..045b6ce 100644
--- a/agent/service/src/main/resources/agent-application.properties
+++ b/agent/service/src/main/resources/agent-application.properties
@@ -41,7 +41,7 @@
 agent.transport.directory=plugins
 
 ### agent transport configurations ###
-agent.transport.local.dma = true
-agent.transport.local.linux = true
+#agent.transport.local.dma = true
+agent.transport.local.buffLen = 16777216
 agent.transport.s3.chunkSize = 10
 agent.transport.s3.multipart = true
\ No newline at end of file
diff --git a/common/common-clients/src/main/java/org/apache/airavata/mft/admin/TransportProperties.java b/common/common-clients/src/main/java/org/apache/airavata/mft/admin/TransportProperties.java
new file mode 100644
index 0000000..ccbb859
--- /dev/null
+++ b/common/common-clients/src/main/java/org/apache/airavata/mft/admin/TransportProperties.java
@@ -0,0 +1,33 @@
+/*
+ * 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.
+ */
+
+package org.apache.airavata.mft.admin;
+
+public final class TransportProperties {
+
+    private final String dma = "false";
+
+    public String getDma() {
+        return dma;
+    }
+
+    private final int buffLen = 1024 * 1024 * 16;
+
+    public int getBuffLen() {
+        return buffLen;
+    }
+}
diff --git a/transport/local-transport/pom.xml b/transport/local-transport/pom.xml
index d8e0306..4259f4a 100644
--- a/transport/local-transport/pom.xml
+++ b/transport/local-transport/pom.xml
@@ -38,6 +38,11 @@
             <artifactId>mft-core</artifactId>
             <version>0.01-SNAPSHOT</version>
         </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>mft-common-clients</artifactId>
+            <version>${project.version}</version>
+        </dependency>
     </dependencies>
     <build>
         <plugins>
diff --git a/transport/local-transport/src/main/java/org/apache/airavata/mft/transport/local/LocalIncomingChunkedConnector.java b/transport/local-transport/src/main/java/org/apache/airavata/mft/transport/local/LocalIncomingChunkedConnector.java
index 9fa51e2..787a65e 100644
--- a/transport/local-transport/src/main/java/org/apache/airavata/mft/transport/local/LocalIncomingChunkedConnector.java
+++ b/transport/local-transport/src/main/java/org/apache/airavata/mft/transport/local/LocalIncomingChunkedConnector.java
@@ -18,6 +18,7 @@
 package org.apache.airavata.mft.transport.local;
 
 
+import org.apache.airavata.mft.admin.TransportProperties;
 import org.apache.airavata.mft.core.api.ConnectorConfig;
 import org.apache.airavata.mft.core.api.IncomingChunkedConnector;
 
@@ -34,13 +35,17 @@
     private long resourceSize;
     private boolean dmaFlag;
 
+    private int buffLen;
+
     private static final Logger logger = LoggerFactory.getLogger(LocalIncomingChunkedConnector.class);
+    private static final TransportProperties transportProperties = new TransportProperties();
 
     @Override
     public void init(ConnectorConfig connectorConfig) throws Exception {
         this.resourcePath = connectorConfig.getResourcePath();
         this.resourceSize = connectorConfig.getMetadata().getFile().getResourceSize();
-        this.dmaFlag = connectorConfig.getTransportConfig().get("local.dma").toString().equals("true");
+        this.dmaFlag = connectorConfig.getTransportConfig().getOrDefault("local.dma", transportProperties.getDma()).toString().equals("true");
+        this.buffLen = Integer.valueOf(connectorConfig.getTransportConfig().getOrDefault("local.buffLen",transportProperties.getBuffLen()).toString());
     }
 
     @Override
@@ -60,7 +65,7 @@
         logger.info("Downloading chunk {} with start byte {} and end byte {} to file {} from resource path {}",
                 chunkId, startByte, endByte, downloadFile, this.resourcePath);
 
-        if (this.dmaFlag) {
+        if (dmaFlag) {
             if (resourceSize <= endByte - startByte) {
                 Files.copy(Path.of(this.resourcePath), Path.of(downloadFile));
             } else {
@@ -74,7 +79,6 @@
                 }
             }
         }   else {
-            int buffLen = 1024 * 1024 * 16;
             try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream(this.resourcePath), buffLen);
                  BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(downloadFile))) {
                 byte[] buffer = new byte[buffLen];