initial load
diff --git a/org.eclipse.emf.refactor.build/.project b/org.eclipse.emf.refactor.build/.project new file mode 100644 index 0000000..3b94899 --- /dev/null +++ b/org.eclipse.emf.refactor.build/.project
@@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.emf.refactor.build</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + </buildSpec> + <natures> + </natures> +</projectDescription>
diff --git a/org.eclipse.emf.refactor.build/build_1.xml b/org.eclipse.emf.refactor.build/build_1.xml new file mode 100644 index 0000000..234902c --- /dev/null +++ b/org.eclipse.emf.refactor.build/build_1.xml
@@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + +IMPORTANT: Run it in the same JRE as the workspace. +Run AS -> ANT Build.. -> JRE -> Run in the same JRE as the workspace. + +--> +<project default="feature.export" name="feature.generate" basedir="."> + + <property name="home" location=""/> + <property name="build.dir" location="build"/> + <property name="qualifier.file" location="qualifier.txt"/> + + <target name="clean"> + <delete dir="${build.dir}"/> + </target> + + <target name="init" depends="clean"> + <tstamp> + <format property="qualifier" pattern="yyyyMMddHHmmss" /> + </tstamp> + <echo file="${qualifier.file}">qualifier=${qualifier}</echo> + </target> + + <!-- Have to be replaced: --> + <target name="feature.export" depends="init"> + <pde.exportFeatures + destination="${build.dir}/source" + exportSource="false" + exportType="directory" + qualifier="${qualifier}" + features="org.eclipse.emf.refactor.runtime.feature,org.eclipse.emf.refactor.generator.feature,org.eclipse.emf.refactor.henshin.feature" useJARFormat="true"/> + </target> + +</project>
diff --git a/org.eclipse.emf.refactor.build/build_2.xml b/org.eclipse.emf.refactor.build/build_2.xml new file mode 100644 index 0000000..6994842 --- /dev/null +++ b/org.eclipse.emf.refactor.build/build_2.xml
@@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + +IMPORTANT: Run it in the same JRE as the workspace. +Run AS -> ANT Build.. -> JRE -> Run in the same JRE as the workspace. + +--> +<project default="feature.publish" name="build.site" basedir="."> +<!--project default="download.page.generate" name="build.site" basedir="."--> + + <property name="home" location=""/> + <property name="build.dir" location="build"/> + <property file="qualifier.txt" prefix="input"/> + <property name="resources.dir" location="resources"/> + <property name="repository.name" value="updatesite"/> + <property name="release.no" value="0.5.0"/> + + <!-- Read Qualifier from file: --> + <target name="init"> + <property name="qualifier" value="${input.qualifier}"/> + </target> + + <!-- Generate update site: --> + <target name="site.add" depends="init"> + <copy todir="${build.dir}/${repository.name}/" overwrite="true"> + <fileset dir="${resources.dir}/site"> + <exclude name="site.xml"/> + </fileset> + </copy> +<echo file="${build.dir}/${repository.name}/site.xml" append="false"><?xml version="1.0" encoding="UTF-8"?> +<site> + <feature url="features/org.eclipse.emf.refactor.generator.feature_${release.no}.${qualifier}.jar" id="org.eclipse.emf.refactor.generator.feature" version="${release.no}.${qualifier}"> + <category name="org.eclipse.emf.refactor.BASIC"/> + </feature> + <feature url="features/org.eclipse.emf.refactor.runtime.feature_${release.no}.${qualifier}.jar" id="org.eclipse.emf.refactor.runtime.feature" version="${release.no}.${qualifier}"> + <category name="org.eclipse.emf.refactor.BASIC"/> + </feature> + <feature url="features/org.eclipse.emf.refactor.henshin.feature_${release.no}.${qualifier}.jar" id="org.eclipse.emf.refactor.henshin.feature" version="${release.no}.${qualifier}"> + <category name="org.eclipse.emf.refactor.EXTENSION"/> + </feature> + <category-def name="org.eclipse.emf.refactor.BASIC" label="Emf Refactor" version="${release.no}.${qualifier}"> + <description> + Emf Refactor + </description> + </category-def> + <category-def name="org.eclipse.emf.refactor.EXTENSION" label="EMF Refactor Extensions" version="${release.no}.${qualifier}"> + <description> + EMF Refactor Extensions + </description> + </category-def> +</site> +</echo> + </target> + + <!-- Publish update site: --> + <target name="feature.publish" depends="site.add"> + <eclipse.publish.featuresAndBundles + site="file:${build.dir}/${repository.name}/site.xml" + categoryversion="${release.no}.${qualifier}" + repository="file:${build.dir}/${repository.name}" + compress="true" + > + <features dir="${build.dir}/source/features/" includes="*.jar"/> + <bundles dir="${build.dir}/source/plugins/" includes="*.jar"/> + </eclipse.publish.featuresAndBundles> + <zip destfile="${build.dir}/refactor-${release.no}.${qualifier}.jar"> + <fileset dir="${build.dir}/${repository.name}/"/> + </zip> + </target> + + <!-- Cleanup: --> + <target name="cleanup" depends="feature.publish"> + <delete includeEmptyDirs="true"> + <fileset dir="${build.dir}/${repository.name}/"/> + <fileset dir="${build.dir}/source/"/> + </delete> + </target> + + + <!-- Publish update site: --> + <target name="download.page.generate" depends="cleanup"> + <tstamp> + <format property="timestamp" pattern="dd. MMM yyyy HH:mm" /> + </tstamp> + + <!-- Copy Release: --> + <delete failonerror="false"> + <fileset dir="../refactor/downloads/" includes="refactor-${release.no}.*.jar"/> + </delete> + <copy todir="../refactor/downloads/"> + <fileset file="${build.dir}/refactor-${release.no}.${qualifier}.jar"/> + </copy> + + <!-- Generate Download-File: --> + <copy todir="${build.dir}/web-eclipse"> + <fileset dir="resources/web-eclipse" includes="*"/> + </copy> +<echo file="${build.dir}/web-eclipse/downloads_1.php" append="true"> +<h2>Releases</h2> +<ul class="midlist"> + <li><a href="downloads/refactor-${release.no}.${qualifier}.jar">refactor-${release.no}.${qualifier}.jar</a> (released ${timestamp})</li> +</ul> +</echo> + <concat destfile="${build.dir}/web-eclipse/downloads.php"> + <fileset dir="${build.dir}/web-eclipse" includes="downloads_*.php"/> + </concat> + + <!-- Update Download-File on website: --> + <copy todir="../refactor/" overwrite="true"> + <fileset file="${build.dir}/web-eclipse/downloads.php"/> + </copy> + + <delete includeEmptyDirs="true" failonerror="false"> + <fileset dir="${build.dir}/web-eclipse/"/> + </delete> + + </target> + + +</project>
diff --git a/org.eclipse.emf.refactor.build/readme.txt b/org.eclipse.emf.refactor.build/readme.txt new file mode 100644 index 0000000..2973c9e --- /dev/null +++ b/org.eclipse.emf.refactor.build/readme.txt
@@ -0,0 +1,9 @@ +How to build EMF Refactor: +-------------------------- +1. Run build_1.xml with ANT in the workspace. (Run AS -> ANT Build.. -> JRE -> Run in the same JRE as the workspace.) + Important: Wait until PDE-Build in the lower right corner of eclipse is finished. +2. Run build_2.xml with ANT in the workspace. + +The build process will be revised in the future. + + \ No newline at end of file
diff --git a/org.eclipse.emf.refactor.build/resources/site/index.html b/org.eclipse.emf.refactor.build/resources/site/index.html new file mode 100644 index 0000000..7d4bfb8 --- /dev/null +++ b/org.eclipse.emf.refactor.build/resources/site/index.html
@@ -0,0 +1,60 @@ +<html> +<head> +<title>org.eclipse.emf.refactor.updatesite</title> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<style>@import url("web/site.css");</style> +<script type="text/javascript"> + var returnval = 0; + var stylesheet, xmlFile, cache, doc; + function init(){ + // NSCP 7.1+ / Mozilla 1.4.1+ / Safari + // Use the standard DOM Level 2 technique, if it is supported + if (document.implementation && document.implementation.createDocument) { + xmlFile = document.implementation.createDocument("", "", null); + stylesheet = document.implementation.createDocument("", "", null); + if (xmlFile.load){ + xmlFile.load("site.xml"); + stylesheet.load("web/site.xsl"); + } else { + alert("Document could not be loaded by browser."); + } + xmlFile.addEventListener("load", transform, false); + stylesheet.addEventListener("load", transform, false); + } + //IE 6.0+ solution + else if (window.ActiveXObject) { + xmlFile = new ActiveXObject("msxml2.DOMDocument.3.0"); + xmlFile.async = false; + xmlFile.load("site.xml"); + stylesheet = new ActiveXObject("msxml2.FreeThreadedDOMDocument.3.0"); + stylesheet.async = false; + stylesheet.load("web/site.xsl"); + cache = new ActiveXObject("msxml2.XSLTemplate.3.0"); + cache.stylesheet = stylesheet; + transformData(); + } + } + // separate transformation function for IE 6.0+ + function transformData(){ + var processor = cache.createProcessor(); + processor.input = xmlFile; + processor.transform(); + data.innerHTML = processor.output; + } + // separate transformation function for NSCP 7.1+ and Mozilla 1.4.1+ + function transform(){ + returnval+=1; + if (returnval==2){ + var processor = new XSLTProcessor(); + processor.importStylesheet(stylesheet); + doc = processor.transformToDocument(xmlFile); + document.getElementById("data").innerHTML = doc.documentElement.innerHTML; + } + } +</script> +</head> +<body onload="init();"> +<!--[insert static HTML here]--> +<div id="data"><!-- this is where the transformed data goes --></div> +</body> +</html>
diff --git a/org.eclipse.emf.refactor.build/resources/site/site.xml b/org.eclipse.emf.refactor.build/resources/site/site.xml new file mode 100644 index 0000000..92f7a62 --- /dev/null +++ b/org.eclipse.emf.refactor.build/resources/site/site.xml
@@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<site> + <feature url="features/org.eclipse.emf.refactor.generator.feature_0.5.0.qualifier.jar" id="org.eclipse.emf.refactor.generator.feature" version="0.5.0.qualifier"> + <category name="org.eclipse.emf.refactor.BASIC"/> + </feature> + <feature url="features/org.eclipse.emf.refactor.runtime.feature_0.5.0.qualifier.jar" id="org.eclipse.emf.refactor.runtime.feature" version="0.5.0.qualifier"> + <category name="org.eclipse.emf.refactor.BASIC"/> + </feature> + <feature url="features/org.eclipse.emf.refactor.henshin.feature_0.5.0.qualifier.jar" id="org.eclipse.emf.refactor.henshin.feature" version="0.5.0.qualifier"> + <category name="org.eclipse.emf.refactor.EXTENSION"/> + </feature> + <category-def name="org.eclipse.emf.refactor.BASIC" label="Emf Refactor"> + <description> + Emf Refactor + </description> + </category-def> + <category-def name="org.eclipse.emf.refactor.EXTENSION" label="EMF Refactor Extensions"> + <description> + EMF Refactor Extensions + </description> + </category-def> +</site>
diff --git a/org.eclipse.emf.refactor.build/resources/site/web/site.css b/org.eclipse.emf.refactor.build/resources/site/web/site.css new file mode 100644 index 0000000..62c6f9f --- /dev/null +++ b/org.eclipse.emf.refactor.build/resources/site/web/site.css
@@ -0,0 +1,12 @@ +<STYLE type="text/css"> +td.spacer {padding-bottom: 10px; padding-top: 10px;} +.title { font-family: sans-serif; color: #99AACC;} +.bodyText { font-family: sans-serif; font-size: 9pt; color:#000000; } +.sub-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white;} +.log-text {font-family: sans-serif; font-style: normal; font-weight: lighter; font-size: 8pt; color:black;} +.big-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white; border-top:10px solid white;} +.light-row {background:#FFFFFF} +.dark-row {background:#EEEEFF} +.header {background:#99AADD} +#indent {word-wrap : break-word;width :300px;text-indent:10px;} +</STYLE>
diff --git a/org.eclipse.emf.refactor.build/resources/site/web/site.xsl b/org.eclipse.emf.refactor.build/resources/site/web/site.xsl new file mode 100644 index 0000000..854bd47 --- /dev/null +++ b/org.eclipse.emf.refactor.build/resources/site/web/site.xsl
@@ -0,0 +1,214 @@ +<xsl:stylesheet version = '1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' xmlns:msxsl="urn:schemas-microsoft-com:xslt"> +<xsl:output method="html" encoding="UTF-8"/> +<xsl:key name="cat" match="category" use="@name"/> +<xsl:template match="/"> +<xsl:for-each select="site"> + <html> + <head> + <title>org.eclipse.emf.refactor.updatesite</title> + <style>@import url("web/site.css");</style> + </head> + <body> + <h1 class="title">org.eclipse.emf.refactor.updatesite</h1> + <p class="bodyText"><xsl:value-of select="description"/></p> + <table width="100%" border="0" cellspacing="1" cellpadding="2"> + <xsl:for-each select="category-def"> + <xsl:sort select="@label" order="ascending" case-order="upper-first"/> + <xsl:sort select="@name" order="ascending" case-order="upper-first"/> + <xsl:if test="count(key('cat',@name)) != 0"> + <tr class="header"> + <td class="sub-header" width="30%"> + <xsl:value-of select="@name"/> + </td> + <td class="sub-header" width="70%"> + <xsl:value-of select="@label"/> + </td> + </tr> + <xsl:for-each select="key('cat',@name)"> + <xsl:sort select="ancestor::feature//@version" order="ascending"/> + <xsl:sort select="ancestor::feature//@id" order="ascending" case-order="upper-first"/> + <tr> + <xsl:choose> + <xsl:when test="(position() mod 2 = 1)"> + <xsl:attribute name="class">dark-row</xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="class">light-row</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <td class="log-text" id="indent"> + <xsl:choose> + <xsl:when test="ancestor::feature//@label"> + <a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@label"/></a> + <br/> + <div id="indent"> + (<xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/>) + </div> + </xsl:when> + <xsl:otherwise> + <a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/></a> + </xsl:otherwise> + </xsl:choose> + <br /> + </td> + <td> + <table> + <xsl:if test="ancestor::feature//@os"> + <tr><td class="log-text" id="indent">Operating Systems:</td> + <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@os"/></td> + </tr> + </xsl:if> + <xsl:if test="ancestor::feature//@ws"> + <tr><td class="log-text" id="indent">Windows Systems:</td> + <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@ws"/></td> + </tr> + </xsl:if> + <xsl:if test="ancestor::feature//@nl"> + <tr><td class="log-text" id="indent">Languages:</td> + <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@nl"/></td> + </tr> + </xsl:if> + <xsl:if test="ancestor::feature//@arch"> + <tr><td class="log-text" id="indent">Architecture:</td> + <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@arch"/></td> + </tr> + </xsl:if> + </table> + </td> + </tr> + </xsl:for-each> + <tr><td class="spacer"><br/></td><td class="spacer"><br/></td></tr> + </xsl:if> + </xsl:for-each> + <xsl:if test="count(feature) > count(feature/category)"> + <tr class="header"> + <td class="sub-header" colspan="2"> + Uncategorized + </td> + </tr> + </xsl:if> + <xsl:choose> + <xsl:when test="function-available('msxsl:node-set')"> + <xsl:variable name="rtf-nodes"> + <xsl:for-each select="feature[not(category)]"> + <xsl:sort select="@id" order="ascending" case-order="upper-first"/> + <xsl:sort select="@version" order="ascending" /> + <xsl:value-of select="."/> + <xsl:copy-of select="." /> + </xsl:for-each> + </xsl:variable> + <xsl:variable name="myNodeSet" select="msxsl:node-set($rtf-nodes)/*"/> + <xsl:for-each select="$myNodeSet"> + <tr> + <xsl:choose> + <xsl:when test="position() mod 2 = 1"> + <xsl:attribute name="class">dark-row</xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="class">light-row</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <td class="log-text" id="indent"> + <xsl:choose> + <xsl:when test="@label"> + <a href="{@url}"><xsl:value-of select="@label"/></a> + <br /> + <div id="indent"> + (<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>) + </div> + </xsl:when> + <xsl:otherwise> + <a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a> + </xsl:otherwise> + </xsl:choose> + <br /><br /> + </td> + <td> + <table> + <xsl:if test="@os"> + <tr><td class="log-text" id="indent">Operating Systems:</td> + <td class="log-text" id="indent"><xsl:value-of select="@os"/></td> + </tr> + </xsl:if> + <xsl:if test="@ws"> + <tr><td class="log-text" id="indent">Windows Systems:</td> + <td class="log-text" id="indent"><xsl:value-of select="@ws"/></td> + </tr> + </xsl:if> + <xsl:if test="@nl"> + <tr><td class="log-text" id="indent">Languages:</td> + <td class="log-text" id="indent"><xsl:value-of select="@nl"/></td> + </tr> + </xsl:if> + <xsl:if test="@arch"> + <tr><td class="log-text" id="indent">Architecture:</td> + <td class="log-text" id="indent"><xsl:value-of select="@arch"/></td> + </tr> + </xsl:if> + </table> + </td> + </tr> + </xsl:for-each> + </xsl:when> + <xsl:otherwise> + <xsl:for-each select="feature[not(category)]"> + <xsl:sort select="@id" order="ascending" case-order="upper-first"/> + <xsl:sort select="@version" order="ascending" /> + <tr> + <xsl:choose> + <xsl:when test="count(preceding-sibling::feature[not(category)]) mod 2 = 1"> + <xsl:attribute name="class">dark-row</xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="class">light-row</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <td class="log-text" id="indent"> + <xsl:choose> + <xsl:when test="@label"> + <a href="{@url}"><xsl:value-of select="@label"/></a> + <br /> + <div id="indent"> + (<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>) + </div> + </xsl:when> + <xsl:otherwise> + <a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a> + </xsl:otherwise> + </xsl:choose> + <br /><br /> + </td> + <td> + <table> + <xsl:if test="@os"> + <tr><td class="log-text" id="indent">Operating Systems:</td> + <td class="log-text" id="indent"><xsl:value-of select="@os"/></td> + </tr> + </xsl:if> + <xsl:if test="@ws"> + <tr><td class="log-text" id="indent">Windows Systems:</td> + <td class="log-text" id="indent"><xsl:value-of select="@ws"/></td> + </tr> + </xsl:if> + <xsl:if test="@nl"> + <tr><td class="log-text" id="indent">Languages:</td> + <td class="log-text" id="indent"><xsl:value-of select="@nl"/></td> + </tr> + </xsl:if> + <xsl:if test="@arch"> + <tr><td class="log-text" id="indent">Architecture:</td> + <td class="log-text" id="indent"><xsl:value-of select="@arch"/></td> + </tr> + </xsl:if> + </table> + </td> + </tr> + </xsl:for-each> + </xsl:otherwise> + </xsl:choose> + </table> + </body> + </html> +</xsl:for-each> +</xsl:template> +</xsl:stylesheet>
diff --git a/org.eclipse.emf.refactor.build/resources/web-eclipse/downloads_1.php b/org.eclipse.emf.refactor.build/resources/web-eclipse/downloads_1.php new file mode 100644 index 0000000..8a10576 --- /dev/null +++ b/org.eclipse.emf.refactor.build/resources/web-eclipse/downloads_1.php
@@ -0,0 +1,21 @@ +<?php require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop' + + $pageTitle = "EMF Refactor - Downloads"; + $pageKeywords = "EMF, Refactor, model refactoring, refactoring"; + $pageAuthor = "Thorsten Arendt"; + + $html = <<<EOHTML + +<div id="maincontent"> + + <div id="midcolumn"> + <h1>$pageTitle</h1> + + <p> + <h2>How to's</h2> + <ul class="midlist"> + <li><a href="downloads/manual_application.pdf" target="_blank">How to apply EMF model refactorings</a></li> + <li><a href="downloads/manual_generation.pdf" target="_blank">How to generate new EMF model refactorings using Java code</a></li> + <li>How to generate new EMF model refactorings using Henshin transformations</li> + </ul> + </p>
diff --git a/org.eclipse.emf.refactor.build/resources/web-eclipse/downloads_2.php b/org.eclipse.emf.refactor.build/resources/web-eclipse/downloads_2.php new file mode 100644 index 0000000..496bf87 --- /dev/null +++ b/org.eclipse.emf.refactor.build/resources/web-eclipse/downloads_2.php
@@ -0,0 +1,20 @@ + </div> + + <div id="rightcolumn"> + <div class="sideitem"> + <h6>Incubation</h6> + <p>This component is currently in its <a href="http://www.eclipse.org/projects/dev_process/validation-phase.php">Validation (Incubation) Phase</a>.</p> + <div align="center"><a href="/projects/what-is-incubation.php"><img align="center" src="/images/egg-incubation.png" border="0" alt="Incubation" /></a></div> + </div> + + </div> + +</div> + + +EOHTML; + + + # Generate the web page + $App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html); +?> \ No newline at end of file