You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2014/07/22 15:48:25 UTC
[8/8] git commit: Adding missing ASF V2 license headers
Adding missing ASF V2 license headers
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/a66dbe4a
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/a66dbe4a
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/a66dbe4a
Branch: refs/heads/master
Commit: a66dbe4a81595f975119ab48ece236d6c4ad2850
Parents: cd29e74
Author: Suresh Marru <sm...@apache.org>
Authored: Tue Jul 22 09:48:03 2014 -0400
Committer: Suresh Marru <sm...@apache.org>
Committed: Tue Jul 22 09:48:03 2014 -0400
----------------------------------------------------------------------
.../java/org/apache/airavata/api/Airavata.java | 33 +-
.../airavata/api/airavataAPIConstants.java | 33 +-
.../apache/airavata/api/workflow/Workflow.java | 33 +-
.../api/workflow/workflowAPIConstants.java | 33 +-
.../main/resources/lib/airavata/Airavata.cpp | 17 +
.../src/main/resources/lib/airavata/Airavata.h | 17 +
.../lib/airavata/Airavata_server.skeleton.cpp | 17 +
.../lib/airavata/ApplicationCatalogAPI.cpp | 9387 ------------------
.../lib/airavata/ApplicationCatalogAPI.h | 4069 --------
.../ApplicationCatalogAPI_server.skeleton.cpp | 169 -
.../main/resources/lib/airavata/Workflow.cpp | 17 +
.../src/main/resources/lib/airavata/Workflow.h | 17 +
.../lib/airavata/Workflow_server.skeleton.cpp | 17 +
.../lib/airavata/airavataAPI_constants.cpp | 17 +
.../lib/airavata/airavataAPI_constants.h | 17 +
.../lib/airavata/airavataAPI_types.cpp | 17 +
.../resources/lib/airavata/airavataAPI_types.h | 17 +
.../airavata/airavataDataModel_constants.cpp | 17 +
.../lib/airavata/airavataDataModel_constants.h | 17 +
.../lib/airavata/airavataDataModel_types.cpp | 17 +
.../lib/airavata/airavataDataModel_types.h | 17 +
.../lib/airavata/airavataErrors_constants.cpp | 17 +
.../lib/airavata/airavataErrors_constants.h | 17 +
.../lib/airavata/airavataErrors_types.cpp | 17 +
.../lib/airavata/airavataErrors_types.h | 17 +
.../applicationCatalogAPI_constants.cpp | 19 -
.../airavata/applicationCatalogAPI_constants.h | 25 -
.../airavata/applicationCatalogAPI_types.cpp | 13 -
.../lib/airavata/applicationCatalogAPI_types.h | 27 -
.../applicationCatalogDataModel_constants.cpp | 19 -
.../applicationCatalogDataModel_constants.h | 25 -
.../applicationCatalogDataModel_types.cpp | 1327 ---
.../applicationCatalogDataModel_types.h | 713 --
.../applicationDeploymentModel_constants.cpp | 17 +
.../applicationDeploymentModel_constants.h | 17 +
.../applicationDeploymentModel_types.cpp | 17 +
.../airavata/applicationDeploymentModel_types.h | 17 +
.../applicationInterfaceModel_constants.cpp | 17 +
.../applicationInterfaceModel_constants.h | 17 +
.../applicationInterfaceModel_types.cpp | 17 +
.../airavata/applicationInterfaceModel_types.h | 17 +
.../airavata/computeResourceModel_constants.cpp | 17 +
.../airavata/computeResourceModel_constants.h | 17 +
.../lib/airavata/computeResourceModel_types.cpp | 393 +-
.../lib/airavata/computeResourceModel_types.h | 119 +
.../lib/airavata/experimentModel_constants.cpp | 17 +
.../lib/airavata/experimentModel_constants.h | 17 +
.../lib/airavata/experimentModel_types.cpp | 17 +
.../lib/airavata/experimentModel_types.h | 17 +
.../airavata/gatewayProfileModel_constants.cpp | 19 -
.../airavata/gatewayProfileModel_constants.h | 25 -
.../lib/airavata/gatewayProfileModel_types.cpp | 293 -
.../lib/airavata/gatewayProfileModel_types.h | 197 -
.../gatewayResourceProfileModel_constants.cpp | 17 +
.../gatewayResourceProfileModel_constants.h | 17 +
.../gatewayResourceProfileModel_types.cpp | 17 +
.../gatewayResourceProfileModel_types.h | 17 +
.../lib/airavata/workflowAPI_constants.cpp | 17 +
.../lib/airavata/workflowAPI_constants.h | 17 +
.../lib/airavata/workflowAPI_types.cpp | 17 +
.../resources/lib/airavata/workflowAPI_types.h | 17 +
.../airavata/workflowDataModel_constants.cpp | 17 +
.../lib/airavata/workflowDataModel_constants.h | 17 +
.../lib/airavata/workflowDataModel_types.cpp | 17 +
.../lib/airavata/workflowDataModel_types.h | 17 +
.../lib/airavata/workspaceModel_constants.cpp | 17 +
.../lib/airavata/workspaceModel_constants.h | 17 +
.../lib/airavata/workspaceModel_types.cpp | 17 +
.../lib/airavata/workspaceModel_types.h | 17 +
.../Model/AppCatalog/ComputeResource/Types.php | 224 +
.../org/apache/airavata/model/Workflow.java | 33 +-
.../ApplicationDeploymentDescription.java | 33 +-
.../appdeployment/ApplicationModule.java | 33 +-
.../ApplicationParallelismType.java | 33 +-
.../appcatalog/appdeployment/SetEnvPaths.java | 33 +-
.../applicationDeploymentModelConstants.java | 33 +-
.../ApplicationInterfaceDescription.java | 33 +-
.../model/appcatalog/appinterface/DataType.java | 33 +-
.../appinterface/InputDataObjectType.java | 33 +-
.../appinterface/OutputDataObjectType.java | 33 +-
.../applicationInterfaceModelConstants.java | 33 +-
.../appcatalog/computeresource/BatchQueue.java | 33 +-
.../ComputeResourceDescription.java | 33 +-
.../computeresource/DataMovementInterface.java | 33 +-
.../computeresource/DataMovementProtocol.java | 33 +-
.../appcatalog/computeresource/FileSystems.java | 33 +-
.../computeresource/GlobusJobSubmission.java | 33 +-
.../computeresource/GridFTPDataMovement.java | 33 +-
.../computeresource/JobManagerCommand.java | 33 +-
.../computeresource/JobSubmissionInterface.java | 33 +-
.../computeresource/JobSubmissionProtocol.java | 33 +-
.../computeresource/LOCALDataMovement.java | 33 +-
.../computeresource/LOCALSubmission.java | 33 +-
.../computeresource/ResourceJobManager.java | 33 +-
.../computeresource/ResourceJobManagerType.java | 33 +-
.../computeresource/SCPDataMovement.java | 33 +-
.../computeresource/SSHJobSubmission.java | 33 +-
.../computeresource/SecurityProtocol.java | 35 +-
.../computeResourceModelConstants.java | 33 +-
.../ComputeResourcePreference.java | 33 +-
.../gatewayprofile/GatewayResourceProfile.java | 33 +-
.../gatewayResourceProfileModelConstants.java | 33 +-
.../model/error/AiravataClientException.java | 33 +-
.../airavata/model/error/AiravataErrorType.java | 33 +-
.../model/error/AiravataSystemException.java | 33 +-
.../model/error/AuthenticationException.java | 33 +-
.../model/error/AuthorizationException.java | 33 +-
.../error/ExperimentNotFoundException.java | 33 +-
.../model/error/InvalidRequestException.java | 33 +-
.../model/error/LaunchValidationException.java | 33 +-
.../model/error/ProjectNotFoundException.java | 33 +-
.../airavata/model/error/TimedOutException.java | 33 +-
.../airavata/model/error/ValidationResults.java | 33 +-
.../airavata/model/error/ValidatorResult.java | 33 +-
.../model/workflowDataModelConstants.java | 33 +-
.../airavata/model/workspace/Gateway.java | 33 +-
.../apache/airavata/model/workspace/Group.java | 33 +-
.../airavata/model/workspace/Project.java | 33 +-
.../apache/airavata/model/workspace/User.java | 33 +-
.../workspace/experiment/ActionableGroup.java | 33 +-
.../experiment/AdvancedInputDataHandling.java | 33 +-
.../experiment/AdvancedOutputDataHandling.java | 33 +-
.../workspace/experiment/ApplicationStatus.java | 33 +-
.../ComputationalResourceScheduling.java | 33 +-
.../workspace/experiment/CorrectiveAction.java | 33 +-
.../workspace/experiment/DataObjectType.java | 33 +-
.../experiment/DataTransferDetails.java | 33 +-
.../model/workspace/experiment/DataType.java | 33 +-
.../workspace/experiment/ErrorCategory.java | 33 +-
.../workspace/experiment/ErrorDetails.java | 33 +-
.../workspace/experiment/ExecutionUnit.java | 33 +-
.../model/workspace/experiment/Experiment.java | 33 +-
.../workspace/experiment/ExperimentState.java | 33 +-
.../workspace/experiment/ExperimentStatus.java | 33 +-
.../workspace/experiment/ExperimentSummary.java | 33 +-
.../model/workspace/experiment/JobDetails.java | 33 +-
.../model/workspace/experiment/JobState.java | 33 +-
.../model/workspace/experiment/JobStatus.java | 33 +-
.../experiment/QualityOfServiceParams.java | 33 +-
.../model/workspace/experiment/TaskDetails.java | 33 +-
.../model/workspace/experiment/TaskState.java | 33 +-
.../model/workspace/experiment/TaskStatus.java | 33 +-
.../workspace/experiment/TransferState.java | 33 +-
.../workspace/experiment/TransferStatus.java | 33 +-
.../experiment/UserConfigurationData.java | 33 +-
.../workspace/experiment/ValidationResults.java | 33 +-
.../workspace/experiment/ValidatorResult.java | 33 +-
.../experiment/WorkflowNodeDetails.java | 33 +-
.../workspace/experiment/WorkflowNodeState.java | 33 +-
.../experiment/WorkflowNodeStatus.java | 33 +-
.../experiment/experimentModelConstants.java | 33 +-
airavata-api/generate-thrift-files.sh | 52 +-
.../computeResourceModel.thrift | 26 +
153 files changed, 2963 insertions(+), 17801 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/a66dbe4a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
index b67cd2d..6af1f32 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
@@ -1,19 +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.
- */
+/*
+ * 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.
+ */
+
/**
* Autogenerated by Thrift Compiler (0.9.1)
*
http://git-wip-us.apache.org/repos/asf/airavata/blob/a66dbe4a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/airavataAPIConstants.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/airavataAPIConstants.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/airavataAPIConstants.java
index 0594e00..8aa1f56 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/airavataAPIConstants.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/airavataAPIConstants.java
@@ -1,19 +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.
- */
+/*
+ * 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.
+ */
+
/**
* Autogenerated by Thrift Compiler (0.9.1)
*
http://git-wip-us.apache.org/repos/asf/airavata/blob/a66dbe4a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/Workflow.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/Workflow.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/Workflow.java
index 63a8154..277c810 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/Workflow.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/Workflow.java
@@ -1,19 +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.
- */
+/*
+ * 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.
+ */
+
/**
* Autogenerated by Thrift Compiler (0.9.1)
*
http://git-wip-us.apache.org/repos/asf/airavata/blob/a66dbe4a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/workflowAPIConstants.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/workflowAPIConstants.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/workflowAPIConstants.java
index 32f1349..fd91234 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/workflowAPIConstants.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/workflow/workflowAPIConstants.java
@@ -1,19 +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.
- */
+/*
+ * 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.
+ */
+
/**
* Autogenerated by Thrift Compiler (0.9.1)
*
http://git-wip-us.apache.org/repos/asf/airavata/blob/a66dbe4a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
index 96c7d0f..bf63e99 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
@@ -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.
+ */
+
/**
* Autogenerated by Thrift Compiler (0.9.1)
*
http://git-wip-us.apache.org/repos/asf/airavata/blob/a66dbe4a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
index 8dc1706..c7f5d89 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
@@ -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.
+ */
+
/**
* Autogenerated by Thrift Compiler (0.9.1)
*
http://git-wip-us.apache.org/repos/asf/airavata/blob/a66dbe4a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
index 51390b2..ae1692e 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
@@ -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.
+ */
+
// This autogenerated skeleton file illustrates how to build a server.
// You should copy it to another filename to avoid overwriting it.