Author: bfitzpat
Date: 2011-01-25 16:47:28 -0500 (Tue, 25 Jan 2011)
New Revision: 28604
Modified:
workspace/bfitzpat/org.jboss.tools.py.project.converter/src/Main.py
workspace/bfitzpat/org.jboss.tools.py.project.converter/src/constants.py
workspace/bfitzpat/org.jboss.tools.py.project.converter/src/converter.py
workspace/bfitzpat/org.jboss.tools.py.project.converter/src/dir_handler.py
workspace/bfitzpat/org.jboss.tools.py.project.converter/src/file_handler.py
workspace/bfitzpat/org.jboss.tools.py.project.converter/src/utils.py
Log:
Updates to migration script for JBDS-1520 - adding drools and jbpm support, other tweaks
Modified: workspace/bfitzpat/org.jboss.tools.py.project.converter/src/Main.py
===================================================================
--- workspace/bfitzpat/org.jboss.tools.py.project.converter/src/Main.py 2011-01-25
17:53:23 UTC (rev 28603)
+++ workspace/bfitzpat/org.jboss.tools.py.project.converter/src/Main.py 2011-01-25
21:47:28 UTC (rev 28604)
@@ -18,15 +18,112 @@
# change this list to be appropriate to your own runtime directory and
# list of projects to convert
-localruntime =
'/home/bfitzpat/NotBackedUp/runtimes/jboss-soa-p-5/jboss-as/samples/quickstarts'
+localruntime = '/media/My
Passport/Linux/Runtimes/jboss-soa-p-5-er7/jboss-as/samples/quickstarts'
-toconvert.append('camel_helloworld')
-toconvert.append('business_ruleservice_cep')
-toconvert.append('deadletter')
-toconvert.append('helloworld_file_action')
-toconvert.append('helloworld_file_notifier')
-toconvert.append('helloworld_ftp_action')
+# ** entire list of non-eclipse samples
+# ** from /samples/quickstarts
+#toconvert.append('aggregator')
+#toconvert.append('bpel_event_listener')
+#toconvert.append('bpm_orchestration1')
+#toconvert.append('bpm_orchestration2')
+#toconvert.append('bpm_orchestration3')
+#toconvert.append('bpm_orchestration4')
+#toconvert.append('business_ruleservice_cep')
+#toconvert.append('business_ruleservice_ruleAgent')
+#toconvert.append('business_ruleservice_stateful')
+#toconvert.append('business_rules_service')
+#toconvert.append('business_service')
+#toconvert.append('camel_helloworld')
+#toconvert.append('custom_action')
+#toconvert.append('deadletter')
+#toconvert.append('dynamic_router')
+#toconvert.append('ejbprocessor')
+#toconvert.append('exceptions_faults')
+#toconvert.append('fun_cbr')
+#toconvert.append('groovy_gateway')
+#toconvert.append('helloworld')
+#toconvert.append('helloworld_action')
+#toconvert.append('helloworld_ejb3_ws')
+#toconvert.append('helloworld_ejb3_ws_wss')
+#toconvert.append('helloworld_file_action')
+#toconvert.append('helloworld_file_notifier')
+#toconvert.append('helloworld_ftp_action')
+#toconvert.append('helloworld_hibernate_action')
+#toconvert.append('helloworld_sql_action')
+#toconvert.append('helloworld_topic_notifier')
+#toconvert.append('helloworld_tx_sql_action')
+#toconvert.append('http_gateway')
+#toconvert.append('https_2way_ssl')
+#toconvert.append('huge-split-enrich-transform-route')
+#toconvert.append('invm_transport1')
+#toconvert.append('jms_router')
+#toconvert.append('jms_secured')
+#toconvert.append('jms_topic')
+#toconvert.append('jms_transacted')
+#toconvert.append('load_generator')
+#toconvert.append('messagealerts')
+#toconvert.append('messagefilter')
+#toconvert.append('messagestore')
+#toconvert.append('monitoring_action')
+#toconvert.append('native_client')
+#toconvert.append('opensso')
+#toconvert.append('publish_as_webservice')
+#toconvert.append('publish_as_webservice_inonly')
+#toconvert.append('recipient_list')
+#toconvert.append('scheduled_services')
+#toconvert.append('scripting_chain')
+#toconvert.append('scripting_groovy')
+#toconvert.append('security_basic')
+#toconvert.append('security_cert')
+#toconvert.append('security_jbpm')
+#toconvert.append('security_saml')
+#toconvert.append('simple_cbr')
+#toconvert.append('smooks_file_splitter_router')
+#toconvert.append('spring_aop')
+#toconvert.append('spring_helloworld')
+#toconvert.append('spring_jpetstore')
+#toconvert.append('static_router')
+#toconvert.append('swift2xml_action')
+#toconvert.append('transform_CSV2XML')
+#toconvert.append('transform_EDI2XML_Groovy_XSLT')
+#toconvert.append('transform_XML2POJO')
+#toconvert.append('transform_XML2POJO2')
+#toconvert.append('transform_XML2XML_date_manipulation')
+#toconvert.append('transform_XML2XML_simple')
+#toconvert.append('transform_XML2XML_stream')
+#toconvert.append('two_servers')
+#toconvert.append('udp_gateway')
+#toconvert.append('webservice_consumer1')
+#toconvert.append('webservice_consumer2')
+#toconvert.append('webservice_consumer_wise')
+#toconvert.append('webservice_consumer_wise2')
+#toconvert.append('webservice_consumer_wise3')
+#toconvert.append('webservice_consumer_wise4')
+#toconvert.append('webservice_mtom')
+#toconvert.append('webservice_producer')
+#toconvert.append('webservice_proxy_basic')
+#toconvert.append('webservice_proxy_routed')
+#toconvert.append('webservice_proxy_security')
+#toconvert.append('webservice_proxy_versioning')
+#toconvert.append('webservice_wsaddressing')
+#toconvert.append('webservice_wssecurity')
+#toconvert.append('wiretap')
+#toconvert.append('wsmq_router')
+#toconvert.append('xml2swift_action')
+#toconvert.append('')
+# **main set from /samples/quickstarts/readme.txt
+#toconvert.append('helloworld')
+#toconvert.append('helloworld_action')
+#toconvert.append('custom_action')
+#toconvert.append('transform_XML2POJO')
+toconvert.append('simple_cbr')
+toconvert.append('fun_cbr')
+#toconvert.append('business_service')
+toconvert.append('native_client')
+#toconvert.append('static_router')
+#toconvert.append('aggregator')
+
for x in toconvert:
print 'Starting to convert ' + x
convert( os.path.join(localruntime, x) )
Modified: workspace/bfitzpat/org.jboss.tools.py.project.converter/src/constants.py
===================================================================
--- workspace/bfitzpat/org.jboss.tools.py.project.converter/src/constants.py 2011-01-25
17:53:23 UTC (rev 28603)
+++ workspace/bfitzpat/org.jboss.tools.py.project.converter/src/constants.py 2011-01-25
21:47:28 UTC (rev 28604)
@@ -9,10 +9,19 @@
esbcontentdir = 'esbcontent'
metainfdir = 'META-INF'
settingsdir = '.settings'
+deploymentxml = 'deployment.xml'
+jmsqueueopen = '<jmsQueue>'
+jmsqueueclose = '</jmsQueue>'
+dotprojectfilename = '.project'
+dotclasspathfilename = '.classpath'
+facetcorexmlfilename = 'org.eclipse.wst.common.project.facet.core.xml'
+wstcommoncomponentfilename = 'org.eclipse.wst.common.component'
+jdtcoreprefsfilename = 'org.eclipse.jdt.core.prefs'
+rulesdir = 'rules'
# name of the runtime target server - CHANGE THIS TO BE YOUR LOCAL SERVER NAME
runtimeTargetServerName = 'JBoss SOA-P 5.1 Runtime Server'
# version for ESB
-esbVersion = '4.4'
+esbVersion = '4.9'
Modified: workspace/bfitzpat/org.jboss.tools.py.project.converter/src/converter.py
===================================================================
--- workspace/bfitzpat/org.jboss.tools.py.project.converter/src/converter.py 2011-01-25
17:53:23 UTC (rev 28603)
+++ workspace/bfitzpat/org.jboss.tools.py.project.converter/src/converter.py 2011-01-25
21:47:28 UTC (rev 28604)
@@ -12,7 +12,54 @@
import file_handler
import dir_handler
import constants
+import shutil
+import utils
+variant_esb_filenames = [ 'jboss-esb-unfiltered.xml', 'jboss-esb.xml']
+variant_esbprops_filenames = [ 'jboss-esb.properties',
'jbossesb-properties.xml']
+variant_jbpm_filenames = [ 'gpd.xml', 'processdefinition.xml' ]
+variant_jbpm_foldernames = [ 'processDefinition' ]
+
+def create_esb_dirs (eclipse_dir, new_mode, directories):
+ # create directories under new_dir
+ dir_handler.create_esbcontent_dir(eclipse_dir, new_mode)
+ dir_handler.create_esbcontent_metainf_dir(eclipse_dir, new_mode)
+ directories.append(constants.esbcontentdir)
+ directories.append(constants.metainfdir)
+
+def create_drools_dirs (eclipse_dir, new_mode, directories):
+ # create directories under new_dir
+ dir_handler.create_drools_rules_dir(eclipse_dir, new_mode)
+ directories.append(constants.rulesdir)
+
+def is_esb_project ( in_dir ):
+ for esbfile in variant_esb_filenames:
+ if utils.does_file_exist(in_dir, esbfile):
+ return True
+ for esbpropsfile in variant_esbprops_filenames:
+ if utils.does_file_exist(in_dir, esbpropsfile):
+ return True
+ return False
+
+def is_jbpm_project ( in_dir ):
+ for jbpmfile in variant_jbpm_filenames:
+ if utils.does_file_exist(in_dir, jbpmfile):
+ return True
+ for jbpmfolder in variant_jbpm_foldernames:
+ if utils.does_folder_exist(in_dir, jbpmfolder):
+ return True
+ return False
+
+def is_drools_project ( in_dir ):
+ # now we've gone through all the files we know about, so let's grab the
+ # files and directories we don't know what to do with and copy them over too
+ dircontents = os.listdir(in_dir)
+ for dirfileordir in dircontents:
+ if os.path.isfile(os.path.join(in_dir, dirfileordir)):
+ if dirfileordir.endswith('.drl'):
+ return True
+ return False
+
def dir_to_eclipse(in_dir):
# assumes mode of in_dir will be the same as eclipse_dir
new_mode = os.stat(in_dir).st_mode
@@ -27,75 +74,136 @@
dir_handler.create_eclipse_project_dir(eclipse_dir, eclipse_dir_name, new_mode)
# create directories under new_dir
- dir_handler.create_esbcontent_dir(eclipse_dir, new_mode)
- dir_handler.create_esbcontent_metainf_dir(eclipse_dir, new_mode)
dir_handler.create_dotsettings_dir(eclipse_dir, new_mode)
+
+ directories = [ constants.settingsdir ]
# handle src directory - copy src in if there is src, otherwise
# just create empty src dir
dir_handler.handle_src_dir(in_dir, eclipse_dir, new_mode)
+ directories.append(constants.srcdir)
- # handle copying and updating the deployment.xml file
- file_handler.handle_deployment_xml(in_dir, eclipse_dir)
+ files = [ ]
+
+ # figure out if this is an esb project
+ global isesb
+ isesb = is_esb_project ( in_dir )
+
+ # figure out if this is a jbpm project
+ global isjbpm3
+ isjbpm3 = is_jbpm_project ( in_dir )
+
+ # figure out if this is a drools project
+ global isdrools
+ isdrools = is_drools_project ( in_dir )
+
+ if isesb:
- # copy any jboss-esb.xml files (or name variants) to META-INF dir
- global isesb
- isesb = False
- variant_esb_filenames = [ 'jboss-esb-unfiltered.xml',
'jboss-esb.xml']
- for esbfile in variant_esb_filenames:
- copied = file_handler.copy_file_to_metainfdir(in_dir, eclipse_dir, esbfile)
- if copied:
- isesb = True
+ # create the esb directories
+ create_esb_dirs (eclipse_dir, new_mode, directories )
+
+ # handle copying and updating the deployment.xml file
+ file_handler.handle_deployment_xml(in_dir, eclipse_dir)
+
+ files.append(constants.deploymentxml)
- # copy any jboss-esb.properties files to META-INF dir
- variant_esbprops_filenames = [ 'jboss-esb.properties',
'jbossesb-properties.xml']
- for esbpropsfile in variant_esbprops_filenames:
- copied = file_handler.copy_file_to_metainfdir(in_dir, eclipse_dir, esbpropsfile)
+ # copy any jboss-esb.xml files (or name variants) to META-INF dir
+ for esbfile in variant_esb_filenames:
+ copied = file_handler.copy_file_to_metainfdir(in_dir, eclipse_dir, esbfile)
+ if copied:
+ files.append(esbfile)
+ break
+
+ # copy any jboss-esb.properties files to esbcontent dir
+ for esbpropsfile in variant_esbprops_filenames:
+ copied = file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir,
esbpropsfile)
+ if copied:
+ files.append(esbpropsfile)
+ break
+
+ # copy any jbm-queue-service.xml files to esbcontent dir
+ jbmqueueservicexml = 'jbm-queue-service.xml'
+ copied = file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir,
jbmqueueservicexml)
if copied:
- isesb = True
+ files.append(jbmqueueservicexml)
- # copy any log4j.xml files to esbcontent dir
- log4jxml = 'log4j.xml'
- file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir, log4jxml)
+ # copy any business_ruleservice_cep.drl files to esbcontent dir
+# businessruleservicecepdrl = 'business_ruleservice_cep.drl'
+# copied = file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir,
businessruleservicecepdrl)
+# if copied:
+# files.append(businessruleservicecepdrl)
- # copy any hornetq-jms.xml files to esbcontent dir
- hornetqjmsxml = 'hornetq-jms.xml'
- file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir, hornetqjmsxml)
+ # copy any business_ruleservice_cep-unfiltered.properties files to esbcontent
dir
+# businessruleservicecepunfilteredproperties =
'business_ruleservice_cep-unfiltered.properties'
+# copied = file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir,
businessruleservicecepunfilteredproperties)
+# if copied:
+# files.append(businessruleservicecepunfilteredproperties)
+
+ # copy any smooks files to esbcontent dir
+ variant_smooks_filenames = [ 'smooks-res.xml',
'smooks-config.xml']
+ for smooksfile in variant_smooks_filenames:
+ copied = file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir,
smooksfile)
+ if copied:
+ files.append(smooksfile)
+ break
- # copy any jbm-queue-service.xml files to esbcontent dir
- jbmqueueservicexml = 'jbm-queue-service.xml'
- file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir, jbmqueueservicexml)
+ if isdrools:
+
+ # create the drools rules directory
+ create_drools_dirs (eclipse_dir, new_mode, directories )
- # copy any jndi.properties files to esbcontent dir
- jndiprops = 'jndi.properties'
- file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir, jndiprops)
+ # copy any .drl files to drools rules dir
+ dircontents = os.listdir(in_dir)
+ for dirfileordir in dircontents:
+ if os.path.isfile(os.path.join(in_dir, dirfileordir)):
+ if dirfileordir.endswith('.drl'):
+ copied = file_handler.copy_file_to_rulesdir(in_dir, eclipse_dir,
dirfileordir)
+ if copied:
+ files.append(dirfileordir)
- # copy any business_ruleservice_cep.drl files to esbcontent dir
- businessruleservicecepdrl = 'business_ruleservice_cep.drl'
- file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir,
businessruleservicecepdrl)
+ # copy any extraneous rules related files to rules dir
+ variant_drlrelated_filenames = [ 'regex-rules.properties']
+ for drlrelatedfile in variant_drlrelated_filenames:
+ copied = file_handler.copy_file_to_rulesdir(in_dir, eclipse_dir,
drlrelatedfile)
+ if copied:
+ files.append(drlrelatedfile)
+ break
- # copy any business_ruleservice_cep-unfiltered.properties files to esbcontent dir
- businessruleservicecepunfilteredproperties =
'business_ruleservice_cep-unfiltered.properties'
- file_handler.copy_file_to_esbcontentdir(in_dir, eclipse_dir,
businessruleservicecepunfilteredproperties)
-
# copy any build.xml files to root eclipse project dir
buildxml = 'build.xml'
- file_handler.handle_copy_file(in_dir, eclipse_dir, buildxml)
+ copied = file_handler.handle_copy_file(in_dir, eclipse_dir, buildxml)
+ if copied:
+ files.append(buildxml)
# copy any readme.txt files to root eclipse project dir
readmetxt = 'readme.txt'
- file_handler.handle_copy_file(in_dir, eclipse_dir, readmetxt)
+ copied = file_handler.handle_copy_file(in_dir, eclipse_dir, readmetxt)
+ if copied:
+ files.append(readmetxt)
# create the .project file
file_handler.create_dotproject_file(eclipse_dir, projectname)
+ files.append(constants.dotprojectfilename)
# create the .classpath file
containers = []
if isesb:
containers.append( 'org.jboss.esb.runtime.classpath/server.supplied/' +
constants.runtimeTargetServerName )
containers.append(
'org.eclipse.jst.server.core.container/org.jboss.ide.eclipse.as.core.server.runtime.runtimeTarget/'
+ constants.runtimeTargetServerName )
- file_handler.create_dotclasspath_file(eclipse_dir, containers)
+ libraries = []
+ if isjbpm3:
+ containers.append( 'JBPM/jBPM 3' )
+ libraries.append(
'../jboss-as/server/default/deploy/jbpm.esb/jbossesb-jbpm.jar')
+
+ srcdirs = []
+ if isdrools:
+ containers.append( 'DROOLS/Drools')
+ srcdirs.append(constants.rulesdir)
+
+ file_handler.create_dotclasspath_file(eclipse_dir, containers, libraries, srcdirs)
+ files.append(constants.dotclasspathfilename)
+
# create the org.eclipse.wst.common.project.facet.core.xml file
entries = []
entries.append(' <runtime name="' +
constants.runtimeTargetServerName + '"/>')
@@ -103,6 +211,7 @@
entries.append(' <fixed facet="jst.jboss.esb"/>')
entries.append(' <installed facet="jst.jboss.esb"
version="' + constants.esbVersion + '"/>')
file_handler.create_facetcorexml_file(eclipse_dir, entries)
+ files.append(constants.facetcorexmlfilename)
# create the org.eclipse.wst.common.component file
entries = []
@@ -110,6 +219,33 @@
entries.append(' <wb-resource deploy-path="/"
source-path="/esbcontent"/>')
entries.append(' <property name="java-output-path"
value="/esbcontent/build/classes/"/>')
file_handler.create_wstcommoncomponent_file (eclipse_dir, projectname, entries)
+ files.append(constants.wstcommoncomponentfilename)
# create the org.eclipse.jdt.core.prefs file
file_handler.create_jdtcoreprefs_file(eclipse_dir)
+ files.append(constants.jdtcoreprefsfilename)
+
+ # now we've gone through all the files we know about, so let's grab the
+ # files and directories we don't know what to do with and copy them over too
+ dircontents = os.listdir(in_dir)
+ for dirfileordir in dircontents:
+ if os.path.isfile(os.path.join(in_dir, dirfileordir)):
+ isfound = False
+ for file in files:
+ if cmp(file, dirfileordir) == 0:
+ isfound = True
+ break
+ if isfound == False:
+ copied = file_handler.handle_copy_file(in_dir, eclipse_dir,
dirfileordir)
+ if copied:
+ files.append(dirfileordir)
+
+ if os.path.isdir(os.path.join(in_dir, dirfileordir)):
+ isfound = False
+ for dir in directories:
+ if cmp(dir, dirfileordir) == 0:
+ isfound = True
+ break
+ if isfound == False:
+ shutil.copytree(os.path.join(in_dir, dirfileordir),
os.path.join(eclipse_dir, dirfileordir))
+ directories.append(dirfileordir)
Modified: workspace/bfitzpat/org.jboss.tools.py.project.converter/src/dir_handler.py
===================================================================
--- workspace/bfitzpat/org.jboss.tools.py.project.converter/src/dir_handler.py 2011-01-25
17:53:23 UTC (rev 28603)
+++ workspace/bfitzpat/org.jboss.tools.py.project.converter/src/dir_handler.py 2011-01-25
21:47:28 UTC (rev 28604)
@@ -28,6 +28,10 @@
# create new eclipse project directory
create_dir (eclipse_dir, new_mode)
+def create_drools_rules_dir( eclipse_dir, new_mode ):
+ # create esbcontent directory
+ create_dir (os.path.join(eclipse_dir, constants.rulesdir), new_mode)
+
def create_esbcontent_dir( eclipse_dir, new_mode ):
# create esbcontent directory
create_dir (os.path.join(eclipse_dir, constants.esbcontentdir), new_mode)
Modified: workspace/bfitzpat/org.jboss.tools.py.project.converter/src/file_handler.py
===================================================================
--- workspace/bfitzpat/org.jboss.tools.py.project.converter/src/file_handler.py 2011-01-25
17:53:23 UTC (rev 28603)
+++ workspace/bfitzpat/org.jboss.tools.py.project.converter/src/file_handler.py 2011-01-25
21:47:28 UTC (rev 28604)
@@ -19,38 +19,36 @@
def handle_deployment_xml( in_dir, eclipse_dir ):
#constants
- deploymentxml = 'deployment.xml'
- jmsqueueopen = '<jmsQueue>'
- jmsqueueclose = '</jmsQueue>'
- REDONE_STR =
"""<depends>jboss.esb.quickstart.destination:service=Queue,name=
%(queuename)s</depends>"""
+ REDONE_STR =
"""<depends>jboss.esb.quickstart.destination:service=Queue,name=%(queuename)s</depends>"""
#if the deployment file exists in the original directory
- if utils.does_file_exist(in_dir, deploymentxml):
+ if utils.does_file_exist(in_dir, constants.deploymentxml):
# copy it
- shutil.copy2(os.path.join(in_dir, deploymentxml),
- os.path.join(eclipse_dir, constants.esbcontentdir, constants.metainfdir,
deploymentxml))
- debug_msg ( 'created file: ' + deploymentxml )
+ shutil.copy2(os.path.join(in_dir, constants.deploymentxml),
+ os.path.join(eclipse_dir, constants.esbcontentdir, constants.metainfdir,
constants.deploymentxml))
+ debug_msg ( 'created file: ' + constants.deploymentxml )
# now need to modify deployment.xml to get queue references right
- deploymentxmlpath = os.path.join(eclipse_dir, constants.esbcontentdir,
constants.metainfdir, deploymentxml)
+ deploymentxmlpath = os.path.join(eclipse_dir, constants.esbcontentdir,
constants.metainfdir, constants.deploymentxml)
deploymentxmlfile = open(deploymentxmlpath, 'r')
alllines = deploymentxmlfile.readlines()
index = -1
for x in alllines:
index = index + 1
- start = x.find(jmsqueueopen)
+ start = x.find(constants.jmsqueueopen)
if start > -1:
- end = x.find(jmsqueueclose)
+ end = x.find(constants.jmsqueueclose)
if end > -1:
queuename = x[start + 10: end]
alllines[index] = REDONE_STR % {'queuename' : queuename }
+ debug_msg ( 'updated line: ' + alllines[index] )
deploymentxmlfile.close()
# now rewrite the file with the updated deploy tags
- deploymentxmlpath = os.path.join(eclipse_dir, constants.esbcontentdir,
constants.metainfdir, deploymentxml)
+ deploymentxmlpath = os.path.join(eclipse_dir, constants.esbcontentdir,
constants.metainfdir, constants.deploymentxml)
deploymentxmlfile = open(deploymentxmlpath, 'w')
for x in alllines:
deploymentxmlfile.write(x + '\n')
@@ -71,6 +69,10 @@
flag = handle_copy_file ( in_dir, os.path.join(eclipse_dir, constants.esbcontentdir),
filename )
return flag
+def copy_file_to_rulesdir ( in_dir, eclipse_dir, filename ):
+ flag = handle_copy_file ( in_dir, os.path.join(eclipse_dir, constants.rulesdir),
filename )
+ return flag
+
def handle_create_file ( eclipse_dir,filename, contents):
path = os.path.join(eclipse_dir, filename)
file = open(path, 'w')
@@ -78,7 +80,6 @@
utils.writeline(file, line)
def create_dotproject_file ( eclipse_dir, projectname):
- dotprojectfilename = '.project'
contents = []
contents.append('<?xml version="1.0"
encoding="UTF-8"?>')
contents.append('<projectDescription>')
@@ -106,10 +107,9 @@
contents.append('
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>')
contents.append('</natures>')
contents.append('</projectDescription>')
- handle_create_file ( eclipse_dir, dotprojectfilename, contents)
+ handle_create_file ( eclipse_dir, constants.dotprojectfilename, contents)
-def create_dotclasspath_file ( eclipse_dir, containers ):
- dotclasspathfilename = '.classpath'
+def create_dotclasspath_file ( eclipse_dir, containers, libraries, srcdirs ):
contents = []
contents.append('<?xml version="1.0"
encoding="UTF-8"?>')
contents.append('<classpath>')
@@ -124,11 +124,16 @@
for container in containers:
contents.append(' <classpathentry kind="con" path="'
+ container + '"/>')
+ for library in libraries:
+ contents.append(' <classpathentry kind="lib" path="'
+ library + '"/>')
+
+ for src in srcdirs:
+ contents.append(' <classpathentry kind="src" path="'
+ src + '"/>')
+
contents.append('</classpath>')
- handle_create_file ( eclipse_dir, dotclasspathfilename, contents)
+ handle_create_file ( eclipse_dir, constants.dotclasspathfilename, contents)
def create_facetcorexml_file ( eclipse_dir, entries ):
- facetcorexmlfilename = 'org.eclipse.wst.common.project.facet.core.xml'
contents = []
contents.append('<?xml version="1.0"
encoding="UTF-8"?>')
contents.append('<faceted-project>')
@@ -139,10 +144,9 @@
contents.append(entry)
contents.append('</faceted-project>')
- handle_create_file ( os.path.join(eclipse_dir, constants.settingsdir),
facetcorexmlfilename, contents)
+ handle_create_file ( os.path.join(eclipse_dir, constants.settingsdir),
constants.facetcorexmlfilename, contents)
def create_wstcommoncomponent_file ( eclipse_dir, projectname, entries):
- wstcommoncomponentfilename = 'org.eclipse.wst.common.component'
contents = []
contents.append('<?xml version="1.0"
encoding="UTF-8"?>')
contents.append('<project-modules id="moduleCoreId"
project-version="1.5.0">')
@@ -154,10 +158,9 @@
contents.append(' </wb-module>')
contents.append('</project-modules>')
- handle_create_file ( os.path.join(eclipse_dir, constants.settingsdir),
wstcommoncomponentfilename, contents)
+ handle_create_file ( os.path.join(eclipse_dir, constants.settingsdir),
constants.wstcommoncomponentfilename, contents)
def create_jdtcoreprefs_file ( eclipse_dir ):
- jdtcoreprefsfilename = 'org.eclipse.jdt.core.prefs'
contents = []
datetimestamp = datetime.datetime.today().ctime()
contents.append ('#' + datetimestamp)
@@ -173,4 +176,4 @@
contents.append
('org.eclipse.jdt.core.compiler.problem.enumIdentifier=error')
contents.append ('org.eclipse.jdt.core.compiler.source=1.6')
- handle_create_file ( os.path.join(eclipse_dir, constants.settingsdir),
jdtcoreprefsfilename, contents)
+ handle_create_file ( os.path.join(eclipse_dir, constants.settingsdir),
constants.jdtcoreprefsfilename, contents)
Modified: workspace/bfitzpat/org.jboss.tools.py.project.converter/src/utils.py
===================================================================
--- workspace/bfitzpat/org.jboss.tools.py.project.converter/src/utils.py 2011-01-25
17:53:23 UTC (rev 28603)
+++ workspace/bfitzpat/org.jboss.tools.py.project.converter/src/utils.py 2011-01-25
21:47:28 UTC (rev 28604)
@@ -14,6 +14,14 @@
except OSError:
return False
+def does_folder_exist(path, folder):
+ fpath = os.path.join(path, folder)
+ try:
+ if os.path.isdir(fpath):
+ return True
+ except OSError:
+ return False
+
def writeline(file, line):
file.write(line)
file.write('\n')