<!--
    Copyright (c) 2004, 2023 IBM Corporation and others.
    This program and the accompanying materials are made
    available under the terms of the Eclipse Public License 2.0
    which accompanies this distribution, and is available at
    https://www.eclipse.org/legal/epl-2.0/

    SPDX-License-Identifier: EPL-2.0

    Contributors:
        IBM Corporation - initial API and implementation
 -->
<project name="PrepareForPII" default="main" basedir=".">
		
	<!-- Setup temp variables -->
	<target name="init">
		<property name="nlsDir" value="d:/NLS/Corona/0526"/>
		<property name="plugin" value="com.ibm.wtp.annotations.ui"/>
		<property name="plugindir" value="d:/workspaceCorona/${plugin}"/>
		<property name="outputDir" value="${nlsDir}/${plugin}"/>
		
	
	</target>

	<!-- Create the destination dir -->
	<target name="nlsDir" depends="init">
		<mkdir dir="${nlsDir}"/>
	</target>
	
	<!-- Create the destination dir -->
	<target name="plugindir" depends="nlsDir">
		<delete dir="${outputDir}"/>
		<mkdir dir="${outputDir}"/>
	</target>

	<!-- Move the files to the correct locations in the workspace. -->
	<target name="main" depends="plugindir">
	
		<messageIdGen folderPath = "${plugindir}" componentId = "E" />
		
		<copy todir = "${outputDir}/property_files" >
			 <fileset dir="${plugindir}/property_files">
           	  <include name="**/*.properties"/>
  			 </fileset>
  		</copy>
  		
	</target>
</project>
