Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd.Willink2012-04-17 18:16:34 +0000
committerEd.Willink2012-04-17 18:16:34 +0000
commit0b6e62267bfe229105f8a39b409ef79ba2df3cca (patch)
tree73ec343a322431dcf4c8274a99a4077d131990ad /archive
parentb7d67c720d9c98e6a0e36c469bf1c593baf8b24c (diff)
downloadorg.eclipse.qvtd-0b6e62267bfe229105f8a39b409ef79ba2df3cca.tar.gz
org.eclipse.qvtd-0b6e62267bfe229105f8a39b409ef79ba2df3cca.tar.xz
org.eclipse.qvtd-0b6e62267bfe229105f8a39b409ef79ba2df3cca.zip
[unrelated] Move more old files to archive
Diffstat (limited to 'archive')
-rw-r--r--archive/org.eclipse.qvt.declarative.ecore.redistribution-feature/ReadMe.txt1
-rw-r--r--archive/org.eclipse.qvt.declarative.editor.redistribution-feature/ReadMe.txt1
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/.classpath8
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/.cvsignore7
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/.gitignore2
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/.project28
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/META-INF/MANIFEST.MF24
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/about.html26
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/build.properties22
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/build.xml38
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/codeGen.bat14
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/model/library.mdl1093
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/.cvsignore1
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/ConversionAction.pngbin0 -> 2056 bytes
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/SelectAModelImporter.pngbin0 -> 11746 bytes
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/bugs.html12
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/changes.html29
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/epl-v10.html319
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/index.html143
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/installation.html45
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/html/readme.html102
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/icons/full/obj16/RoseModelFile.gifbin0 -> 361 bytes
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.properties40
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.xml43
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporter.java48
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterApplication.java29
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterPlugin.java108
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/ConversionAction.java133
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/OneWayAssociations.java86
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/PackageManager.java341
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/Utils.java98
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/XMIUtils.java103
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLEcoreBuilder.java200
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLUtil.java106
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLDetailPage.java31
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLImporterWizard.java39
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/tasks/org/eclipse/qvt/declarative/importer/roseuml/taskdefs/RoseUMLGeneratorTask.java60
-rw-r--r--archive/org.eclipse.qvt.declarative.importer.roseuml/toc.xml11
-rw-r--r--archive/psf/.project11
-rw-r--r--archive/psf/ocl-editor.psf49
-rw-r--r--archive/releng/ReadMe.txt11
-rw-r--r--archive/releng/build.properties76
-rw-r--r--archive/releng/build.xml73
-rw-r--r--archive/releng/buildExtra.xml144
-rw-r--r--archive/releng/cronjobs11
-rw-r--r--archive/releng/hudson/run.sh98
-rw-r--r--archive/releng/maps/qvtd.map92
-rw-r--r--archive/releng/promote-I.properties19
-rw-r--r--archive/releng/promote-N.properties19
-rw-r--r--archive/releng/promote.properties19
-rw-r--r--archive/releng/promote.xml44
-rw-r--r--archive/releng/psfs/features.psf20
-rw-r--r--archive/releng/psfs/tools.psf8
-rw-r--r--archive/releng/testing.properties10
55 files changed, 4102 insertions, 0 deletions
diff --git a/archive/org.eclipse.qvt.declarative.ecore.redistribution-feature/ReadMe.txt b/archive/org.eclipse.qvt.declarative.ecore.redistribution-feature/ReadMe.txt
new file mode 100644
index 000000000..bea710acf
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.ecore.redistribution-feature/ReadMe.txt
@@ -0,0 +1 @@
+This feature is obsolete. The ocl.edit plugins it originally supported are now available from the MDT/OCL project.
diff --git a/archive/org.eclipse.qvt.declarative.editor.redistribution-feature/ReadMe.txt b/archive/org.eclipse.qvt.declarative.editor.redistribution-feature/ReadMe.txt
new file mode 100644
index 000000000..ca76d14f1
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.editor.redistribution-feature/ReadMe.txt
@@ -0,0 +1 @@
+This feature is obsolete. The variant org.eclipse.imp.runtime plugin it originally supported is no longer necessary.
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/.classpath b/archive/org.eclipse.qvt.declarative.importer.roseuml/.classpath
new file mode 100644
index 000000000..5fcb035d7
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" output="bin.tasks" path="tasks"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/.cvsignore b/archive/org.eclipse.qvt.declarative.importer.roseuml/.cvsignore
new file mode 100644
index 000000000..655886499
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/.cvsignore
@@ -0,0 +1,7 @@
+bin
+bin.tasks
+ant_tasks
+build.xml
+temp.folder
+*.jar
+*.args
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/.gitignore b/archive/org.eclipse.qvt.declarative.importer.roseuml/.gitignore
new file mode 100644
index 000000000..ba246707e
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/.gitignore
@@ -0,0 +1,2 @@
+/bin
+/bin.tasks
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/.project b/archive/org.eclipse.qvt.declarative.importer.roseuml/.project
new file mode 100644
index 000000000..cbe6f2ecb
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.qvt.declarative.importer.roseuml</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/.settings/org.eclipse.jdt.core.prefs b/archive/org.eclipse.qvt.declarative.importer.roseuml/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..aeec126df
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+#Wed Nov 08 10:52:00 EST 2006
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/META-INF/MANIFEST.MF b/archive/org.eclipse.qvt.declarative.importer.roseuml/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..275fc6054
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/META-INF/MANIFEST.MF
@@ -0,0 +1,24 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.qvt.declarative.importer.roseuml;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-ClassPath: importer.roseuml.jar
+Bundle-Activator: org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporterPlugin$Implementation
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.qvt.declarative.importer.roseuml,
+ org.eclipse.qvt.declarative.importer.roseuml.builder,
+ org.eclipse.qvt.declarative.importer.roseuml.taskdefs,
+ org.eclipse.qvt.declarative.importer.roseuml.ui
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.core.resources,
+ org.eclipse.emf.importer,
+ org.eclipse.emf.codegen.ecore.ui;resolution:=optional,
+ org.apache.ant;resolution:=optional,
+ org.eclipse.emf.ant;resolution:=optional,
+ org.eclipse.emf.importer.rose,
+ org.eclipse.emf.ecore.xmi
+Eclipse-LazyStart: true
+Bundle-ActivationPolicy: lazy
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/about.html b/archive/org.eclipse.qvt.declarative.importer.roseuml/about.html
new file mode 100644
index 000000000..2f46c1759
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/about.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>About</title>
+</head><body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>July 19, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party ("Redistributor") and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body></html> \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/build.properties b/archive/org.eclipse.qvt.declarative.importer.roseuml/build.properties
new file mode 100644
index 000000000..52135db46
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/build.properties
@@ -0,0 +1,22 @@
+bin.includes = about.html,\
+ plugin.properties,\
+ plugin.xml,\
+ importer.roseuml.jar,\
+ ant_tasks/importer.roseuml.tasks.jar,\
+ icons/,\
+ META-INF/,\
+ html/,\
+ toc.xml
+src.includes = examples/,\
+ .classpath,\
+ .cvsignore,\
+ .project,\
+ .settings/
+jars.compile.order = importer.roseuml.jar,\
+ ant_tasks/importer.roseuml.tasks.jar
+source.importer.roseuml.jar = src/
+output.importer.roseuml.jar = bin/
+source.ant_tasks/importer.roseuml.tasks.jar = tasks/
+output.ant_tasks/importer.roseuml.tasks.jar = bin.tasks
+exclude.importer.roseuml.jar = **/doc-files/**
+exclude.ant_tasks/importer.roseuml.tasks.jar = **/doc-files/**
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/build.xml b/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/build.xml
new file mode 100644
index 000000000..c26aebc42
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/build.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project default="codegen" basedir="..">
+ <dirname property="antfile.dir" file="${ant.file}"/>
+
+ <!-- Global properties -->
+ <property name="main.directory" location="${antfile.dir}/.."/>
+ <property name="source.directory" value="src"/>
+ <property name="genJDKLevel" value="5.0"/>
+
+ <target name="codegen">
+
+ <!-- A macrodef makes it easier to generate code for multiple models in one script. -->
+ <macrodef name="rose2Java">
+ <attribute name="modelName"/>
+ <element name="settings"/>
+ <sequential>
+ <emf.Rose2Java
+ model="${main.directory}/model/@{modelName}.mdl"
+ genModel="${main.directory}/emf/@{modelName}.genmodel"
+ modelProject="${main.directory}"
+ modelProjectFragmentPath="${source.directory}"
+ modelPluginID="@{modelName}.model"
+ copyright="This is my code."
+ jdkLevel="${genJDKLevel}">
+ <settings/>
+ </emf.Rose2Java>
+ </sequential>
+ </macrodef>
+
+ <!-- Generating the code for the library model -->
+ <rose2Java modelName="library">
+ <settings>
+ <arg line="-package library library library.xmi org.examples Library"/>
+ </settings>
+ </rose2Java>
+
+ </target>
+</project> \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/codeGen.bat b/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/codeGen.bat
new file mode 100644
index 000000000..276c8fb22
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/build/codeGen.bat
@@ -0,0 +1,14 @@
+rem You need to correct the ECLIPSE_LAUNCHER variable below. It should point to the launcher JAR in your eclipse directory.
+set ECLIPSE_LAUNCHER=C:\Eclipse\plugins\org.eclipse.equinox.launcher_1.0.0.v20070606.jar
+
+rem Model project
+set MAIN_DIR=..
+
+rem The directory indicated by the -modelProject argument should be neither a parent nor a child directory of the workspace.
+set WORKSPACE=%MAIN_DIR%\..\codegenWorkspace
+
+rem Rose2GenModel application
+java -jar %ECLIPSE_LAUNCHER% -clean -data %WORKSPACE% -application org.eclipse.gmt.umlx.importer.roseuml.RoseUML2GenModel %MAIN_DIR%\model\library.mdl %MAIN_DIR%\emf\library.genmodel -modelProject %MAIN_DIR% src -modelPluginID library.model -copyright "This is my code." -jdkLevel "5.0" -noQualify -package library library library.xmi org.examples Library
+
+rem Generator application
+java -jar %ECLIPSE_LAUNCHER% -clean -data %WORKSPACE% -application org.eclipse.emf.codegen.ecore.Generator -model %MAIN_DIR%\emf\library.genmodel \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/model/library.mdl b/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/model/library.mdl
new file mode 100644
index 000000000..915fd4142
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/examples/library/model/library.mdl
@@ -0,0 +1,1093 @@
+
+(object Petal
+ version 42
+ _written "Rose 4.5.8163.3"
+ charSet 0)
+
+(object Design "Logical View"
+ is_unit TRUE
+ is_loaded TRUE
+ defaults (object defaults
+ rightMargin 0.250000
+ leftMargin 0.250000
+ topMargin 0.250000
+ bottomMargin 0.500000
+ pageOverlap 0.250000
+ clipIconLabels TRUE
+ autoResize TRUE
+ snapToGrid TRUE
+ gridX 16
+ gridY 16
+ defaultFont (object Font
+ size 10
+ face "Arial"
+ bold FALSE
+ italics FALSE
+ underline FALSE
+ strike FALSE
+ color 0
+ default_color TRUE)
+ showMessageNum 1
+ showClassOfObject TRUE
+ notation "Unified")
+ root_usecase_package (object Class_Category "Use Case View"
+ quid "40C81DB9027F"
+ exportControl "Public"
+ global TRUE
+ logical_models (list unit_reference_list)
+ logical_presentations (list unit_reference_list
+ (object UseCaseDiagram "Main"
+ quid "40C81DB90288"
+ title "Main"
+ zoom 100
+ max_height 28350
+ max_width 21600
+ origin_x 0
+ origin_y 0
+ items (list diagram_item_list))))
+ root_category (object Class_Category "Logical View"
+ quid "40C81DB9027E"
+ exportControl "Public"
+ global TRUE
+ subsystem "Component View"
+ quidu "40C81DB90280"
+ logical_models (list unit_reference_list
+ (object Class_Category "library"
+ attributes (list Attribute_Set)
+ quid "40C81E120060"
+ exportControl "Public"
+ logical_models (list unit_reference_list
+ (object Class "Book"
+ quid "40C81E700047"
+ class_attributes (list class_attribute_list
+ (object ClassAttribute "title"
+ quid "40C81E770119"
+ type "String")
+ (object ClassAttribute "pages"
+ quid "40C81E7E03A3"
+ type "int"
+ initv "100")
+ (object ClassAttribute "category"
+ quid "40C81E890344"
+ type "BookCategory")))
+ (object Class "Library"
+ quid "40C81E4B028D"
+ class_attributes (list class_attribute_list
+ (object ClassAttribute "name"
+ quid "40C81E5302FB"
+ type "String")))
+ (object Class "Writer"
+ quid "40C81E6102FA"
+ class_attributes (list class_attribute_list
+ (object ClassAttribute "name"
+ quid "40C81E69030F"
+ type "String")))
+ (object Class "BookCategory"
+ quid "40C81E9800FF"
+ stereotype "enumeration"
+ class_attributes (list class_attribute_list
+ (object ClassAttribute "Mystery"
+ quid "40C81EB702AF")
+ (object ClassAttribute "ScienceFiction"
+ quid "40C81EBE001A")
+ (object ClassAttribute "Biography"
+ quid "40C81EC10104")))
+ (object Association "$UNNAMED$0"
+ quid "40C81F4E0062"
+ roles (list role_list
+ (object Role "$UNNAMED$1"
+ quid "40C81F4F0321"
+ supplier "Logical View::library::Library"
+ quidu "40C81E4B028D"
+ is_aggregate TRUE)
+ (object Role "writers"
+ quid "40C81F4F0322"
+ label "writers"
+ supplier "Logical View::library::Writer"
+ quidu "40C81E6102FA"
+ client_cardinality (value cardinality "0..n")
+ Containment "By Value"
+ exportControl "Implementation"
+ is_navigable TRUE)))
+ (object Association "$UNNAMED$2"
+ quid "40C81F86019E"
+ roles (list role_list
+ (object Role "books"
+ quid "40C81F870109"
+ label "books"
+ supplier "Logical View::library::Book"
+ quidu "40C81E700047"
+ client_cardinality (value cardinality "0..n")
+ exportControl "Implementation"
+ is_navigable TRUE)
+ (object Role "author"
+ quid "40C81F87010A"
+ label "author"
+ supplier "Logical View::library::Writer"
+ quidu "40C81E6102FA"
+ client_cardinality (value cardinality "1")
+ exportControl "Implementation"
+ is_navigable TRUE)))
+ (object Association "$UNNAMED$3"
+ quid "40C82321022F"
+ roles (list role_list
+ (object Role "$UNNAMED$4"
+ quid "40C823250054"
+ supplier "Logical View::library::Library"
+ quidu "40C81E4B028D"
+ is_aggregate TRUE)
+ (object Role "books"
+ quid "40C823250055"
+ label "books"
+ supplier "Logical View::library::Book"
+ quidu "40C81E700047"
+ client_cardinality (value cardinality "0..n")
+ Containment "By Value"
+ exportControl "Implementation"
+ is_navigable TRUE))))
+ logical_presentations (list unit_reference_list
+ (object ClassDiagram "Main"
+ quid "40C81E3101FC"
+ title "Main"
+ zoom 100
+ max_height 28350
+ max_width 21600
+ origin_x 0
+ origin_y 0
+ items (list diagram_item_list
+ (object ClassView "Class" "Logical View::library::BookCategory" @1
+ ShowCompartmentStereotypes TRUE
+ SuppressOperation TRUE
+ IncludeAttribute TRUE
+ IncludeOperation TRUE
+ location (1072, 224)
+ label (object ItemLabel
+ Parent_View @1
+ location (909, 140)
+ fill_color 13434879
+ nlines 1
+ max_width 326
+ justify 0
+ label "BookCategory")
+ stereotype (object ItemLabel
+ Parent_View @1
+ location (909, 90)
+ fill_color 13434879
+ anchor 10
+ nlines 1
+ max_width 326
+ justify 0
+ label "<<enumeration>>")
+ icon_style "Icon"
+ line_color 3342489
+ fill_color 13434879
+ quidu "40C81E9800FF"
+ width 344
+ height 292
+ autoResize TRUE)
+ (object ClassView "Class" "Logical View::library::Writer" @2
+ ShowCompartmentStereotypes TRUE
+ IncludeAttribute TRUE
+ IncludeOperation TRUE
+ location (224, 672)
+ label (object ItemLabel
+ Parent_View @2
+ location (100, 591)
+ fill_color 13434879
+ nlines 1
+ max_width 248
+ justify 0
+ label "Writer")
+ icon_style "Icon"
+ line_color 3342489
+ fill_color 13434879
+ quidu "40C81E6102FA"
+ width 266
+ height 186
+ autoResize TRUE)
+ (object ClassView "Class" "Logical View::library::Library" @3
+ ShowCompartmentStereotypes TRUE
+ IncludeAttribute TRUE
+ IncludeOperation TRUE
+ location (560, 176)
+ label (object ItemLabel
+ Parent_View @3
+ location (436, 95)
+ fill_color 13434879
+ nlines 1
+ max_width 248
+ justify 0
+ label "Library")
+ icon_style "Icon"
+ line_color 3342489
+ fill_color 13434879
+ quidu "40C81E4B028D"
+ width 266
+ height 186
+ autoResize TRUE)
+ (object AssociationViewNew "$UNNAMED$0" @4
+ location (392, 423)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C81F4E0062"
+ roleview_list (list RoleViews
+ (object RoleView "$UNNAMED$1" @5
+ Parent_View @4
+ location (88, -345)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C81F4F0321"
+ client @4
+ supplier @3
+ line_style 0)
+ (object RoleView "writers" @6
+ Parent_View @4
+ location (88, -345)
+ label (object SegLabel @7
+ Parent_View @6
+ location (234, 506)
+ anchor 1
+ anchor_loc 1
+ nlines 1
+ max_width 144
+ justify 0
+ label "writers"
+ pctDist 0.838068
+ height 85
+ orientation 1)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C81F4F0322"
+ client @4
+ supplier @2
+ line_style 0
+ label (object SegLabel @8
+ Parent_View @6
+ location (402, 522)
+ anchor 2
+ anchor_loc 1
+ nlines 1
+ max_width 15
+ justify 0
+ label "0..*"
+ pctDist 0.405337
+ height 64
+ orientation 0))))
+ (object ClassView "Class" "Logical View::library::Book" @9
+ ShowCompartmentStereotypes TRUE
+ IncludeAttribute TRUE
+ IncludeOperation TRUE
+ location (1008, 672)
+ label (object ItemLabel
+ Parent_View @9
+ location (782, 541)
+ fill_color 13434879
+ nlines 1
+ max_width 452
+ justify 0
+ label "Book")
+ icon_style "Icon"
+ line_color 3342489
+ fill_color 13434879
+ quidu "40C81E700047"
+ width 470
+ height 286
+ autoResize TRUE)
+ (object AssociationViewNew "$UNNAMED$2" @10
+ location (564, 672)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C81F86019E"
+ roleview_list (list RoleViews
+ (object RoleView "books" @11
+ Parent_View @10
+ location (260, -96)
+ label (object SegLabel @12
+ Parent_View @11
+ location (695, 630)
+ anchor 1
+ anchor_loc 1
+ nlines 1
+ max_width 132
+ justify 0
+ label "books"
+ pctDist 0.629808
+ height 43
+ orientation 0)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C81F870109"
+ client @10
+ supplier @9
+ line_style 0
+ label (object SegLabel @13
+ Parent_View @11
+ location (715, 724)
+ anchor 2
+ anchor_loc 1
+ nlines 1
+ max_width 15
+ justify 0
+ label "0..*"
+ pctDist 0.725962
+ height 52
+ orientation 1))
+ (object RoleView "author" @14
+ Parent_View @10
+ location (260, -96)
+ label (object SegLabel @15
+ Parent_View @14
+ location (443, 632)
+ anchor 1
+ anchor_loc 1
+ nlines 1
+ max_width 144
+ justify 0
+ label "author"
+ pctDist 0.586047
+ height 41
+ orientation 1)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C81F87010A"
+ client @10
+ supplier @2
+ line_style 0
+ label (object SegLabel @16
+ Parent_View @14
+ location (423, 725)
+ anchor 2
+ anchor_loc 1
+ nlines 1
+ max_width 15
+ justify 0
+ label "1"
+ pctDist 0.679070
+ height 53
+ orientation 0))))
+ (object AssociationViewNew "$UNNAMED$3" @17
+ location (761, 398)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C82321022F"
+ roleview_list (list RoleViews
+ (object RoleView "$UNNAMED$4" @18
+ Parent_View @17
+ location (-327, -386)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C823250054"
+ client @17
+ supplier @3
+ line_style 0)
+ (object RoleView "books" @19
+ Parent_View @17
+ location (-327, -386)
+ label (object SegLabel @20
+ Parent_View @19
+ location (747, 469)
+ anchor 1
+ anchor_loc 1
+ nlines 1
+ max_width 132
+ justify 0
+ label "books"
+ pctDist 0.244369
+ height 59
+ orientation 1)
+ stereotype TRUE
+ line_color 3342489
+ quidu "40C823250055"
+ client @17
+ supplier @9
+ line_style 0
+ label (object SegLabel @21
+ Parent_View @19
+ location (904, 463)
+ anchor 2
+ anchor_loc 1
+ nlines 1
+ max_width 15
+ justify 0
+ label "0..*"
+ pctDist 0.823204
+ height 63
+ orientation 0)))))))))
+ logical_presentations (list unit_reference_list
+ (object ClassDiagram "Main"
+ quid "40C81DB90284"
+ title "Main"
+ zoom 100
+ max_height 28350
+ max_width 21600
+ origin_x 0
+ origin_y 0
+ items (list diagram_item_list
+ (object CategoryView "Logical View::library" @22
+ location (272, 240)
+ label (object ItemLabel
+ Parent_View @22
+ location (128, 156)
+ fill_color 13434879
+ nlines 2
+ max_width 288
+ justify 0
+ label "library")
+ icon_style "Icon"
+ line_color 3342489
+ fill_color 13434879
+ quidu "40C81E120060"
+ width 300
+ height 180)))))
+ root_subsystem (object SubSystem "Component View"
+ quid "40C81DB90280"
+ physical_models (list unit_reference_list)
+ physical_presentations (list unit_reference_list
+ (object Module_Diagram "Main"
+ quid "40C81DB90287"
+ title "Main"
+ zoom 100
+ max_height 28350
+ max_width 21600
+ origin_x 0
+ origin_y 0
+ items (list diagram_item_list))))
+ process_structure (object Processes
+ quid "40C81DB90281"
+ ProcsNDevs (list
+ (object Process_Diagram "Deployment View"
+ quid "40C81DB90283"
+ title "Deployment View"
+ zoom 100
+ max_height 28350
+ max_width 21600
+ origin_x 0
+ origin_y 0
+ items (list diagram_item_list))))
+ properties (object Properties
+ attributes (list Attribute_Set
+ (object Attribute
+ tool "DDL"
+ name "propertyId"
+ value "809135966")
+ (object Attribute
+ tool "DDL"
+ name "default__Project"
+ value (list Attribute_Set
+ (object Attribute
+ tool "DDL"
+ name "Directory"
+ value "AUTO GENERATE")
+ (object Attribute
+ tool "DDL"
+ name "DataBase"
+ value ("DataBaseSet" 800))
+ (object Attribute
+ tool "DDL"
+ name "DataBaseSet"
+ value (list Attribute_Set
+ (object Attribute
+ tool "DDL"
+ name "ANSI"
+ value 800)
+ (object Attribute
+ tool "DDL"
+ name "Oracle"
+ value 801)
+ (object Attribute
+ tool "DDL"
+ name "SQLServer"
+ value 802)
+ (object Attribute
+ tool "DDL"
+ name "Sybase"
+ value 803)
+ (object Attribute
+ tool "DDL"
+ name "Watcom"
+ value 804)))
+ (object Attribute
+ tool "DDL"
+ name "PrimaryKeyColumnName"
+ value "Id")
+ (object Attribute
+ tool "DDL"
+ name "PrimaryKeyColumnType"
+ value "NUMBER(5)")
+ (object Attribute
+ tool "DDL"
+ name "ViewName"
+ value "V_")
+ (object Attribute
+ tool "DDL"
+ name "TableName"
+ value "T_")
+ (object Attribute
+ tool "DDL"
+ name "InheritSuffix"
+ value "_V")
+ (object Attribute
+ tool "DDL"
+ name "DropClause"
+ value FALSE)
+ (object Attribute
+ tool "DDL"
+ name "BaseViews"
+ value FALSE)
+ (object Attribute
+ tool "DDL"
+ name "DDLScriptFilename"
+ value "DDL1.SQL")))
+ (object Attribute
+ tool "DDL"
+ name "default__Attribute"
+ value (list Attribute_Set
+ (object Attribute
+ tool "DDL"
+ name "ColumnType"
+ value "VARCHAR")
+ (object Attribute
+ tool "DDL"
+ name "Length"
+ value "")
+ (object Attribute
+ tool "DDL"
+ name "NullsOK"
+ value TRUE)
+ (object Attribute
+ tool "DDL"
+ name "PrimaryKey"
+ value FALSE)
+ (object Attribute
+ tool "DDL"
+ name "Unique"
+ value FALSE)
+ (object Attribute
+ tool "DDL"
+ name "CompositeUnique"
+ value FALSE)
+ (object Attribute
+ tool "DDL"
+ name "CheckConstraint"
+ value "")))
+ (object Attribute
+ tool "DDL"
+ name "HiddenTool"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "propertyId"
+ value "809135966")
+ (object Attribute
+ tool "IDL"
+ name "default__Project"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "CreateMissingDirectories"
+ value TRUE)
+ (object Attribute
+ tool "IDL"
+ name "StopOnError"
+ value TRUE)
+ (object Attribute
+ tool "IDL"
+ name "Directory"
+ value "AUTO GENERATE")
+ (object Attribute
+ tool "IDL"
+ name "GeneratePreserveRegions"
+ value TRUE)))
+ (object Attribute
+ tool "IDL"
+ name "default__Class"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "ImplementationType"
+ value "")
+ (object Attribute
+ tool "IDL"
+ name "ConstValue"
+ value "")
+ (object Attribute
+ tool "IDL"
+ name "GenerateDefaultSpecifier"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "DefaultSpecifier"
+ value "")
+ (object Attribute
+ tool "IDL"
+ name "IDLElement"
+ value TRUE)
+ (object Attribute
+ tool "IDL"
+ name "IDLSpecificationType"
+ value ("IDLSpecSet" 22))
+ (object Attribute
+ tool "IDL"
+ name "IDLSpecSet"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "Interface"
+ value 22)
+ (object Attribute
+ tool "IDL"
+ name "Typedef"
+ value 54)
+ (object Attribute
+ tool "IDL"
+ name "Enumeration"
+ value 8)
+ (object Attribute
+ tool "IDL"
+ name "Const"
+ value 71)
+ (object Attribute
+ tool "IDL"
+ name "Exception"
+ value 61)
+ (object Attribute
+ tool "IDL"
+ name "Struct"
+ value 51)
+ (object Attribute
+ tool "IDL"
+ name "Union"
+ value 81)))))
+ (object Attribute
+ tool "IDL"
+ name "default__Module-Spec"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "Generate"
+ value TRUE)
+ (object Attribute
+ tool "IDL"
+ name "CmIdentification"
+ value (value Text " %X% %Q% %Z% %W%"))
+ (object Attribute
+ tool "IDL"
+ name "CopyrightNotice"
+ value (value Text ""))
+ (object Attribute
+ tool "IDL"
+ name "FileName"
+ value "AUTO GENERATE")
+ (object Attribute
+ tool "IDL"
+ name "GenerateIDLModule"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "InclusionProtectionSymbol"
+ value "AUTO GENERATE")
+ (object Attribute
+ tool "IDL"
+ name "AdditionalIncludes"
+ value (value Text ""))
+ (object Attribute
+ tool "IDL"
+ name "IncludeBySimpleName"
+ value FALSE)))
+ (object Attribute
+ tool "IDL"
+ name "default__Module-Body"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "CmIdentification"
+ value (value Text " %X% %Q% %Z% %W%"))
+ (object Attribute
+ tool "IDL"
+ name "CopyrightNotice"
+ value (value Text ""))
+ (object Attribute
+ tool "IDL"
+ name "FileName"
+ value "AUTO GENERATE")
+ (object Attribute
+ tool "IDL"
+ name "AdditionalIncludes"
+ value (value Text ""))
+ (object Attribute
+ tool "IDL"
+ name "IncludeBySimpleName"
+ value FALSE)))
+ (object Attribute
+ tool "IDL"
+ name "default__Operation"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "OperationIsOneWay"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "Context"
+ value "")
+ (object Attribute
+ tool "IDL"
+ name "Raises"
+ value "")))
+ (object Attribute
+ tool "IDL"
+ name "default__Attribute"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "CaseSpecifier"
+ value "")
+ (object Attribute
+ tool "IDL"
+ name "GenerateDataMember"
+ value TRUE)
+ (object Attribute
+ tool "IDL"
+ name "DataMemberName"
+ value "$relationship")
+ (object Attribute
+ tool "IDL"
+ name "IsReadOnly"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "IsConst"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "ConstValue"
+ value "")))
+ (object Attribute
+ tool "IDL"
+ name "default__Has"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "NameIfUnlabeled"
+ value "the_$supplier")
+ (object Attribute
+ tool "IDL"
+ name "GenerateDataMember"
+ value TRUE)
+ (object Attribute
+ tool "IDL"
+ name "DataMemberName"
+ value "$relationship")
+ (object Attribute
+ tool "IDL"
+ name "GenerateForwardReference"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "IsReadOnly"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "BoundedHasRelType"
+ value ("HasRelTypeSet" 47))
+ (object Attribute
+ tool "IDL"
+ name "HasRelTypeSet"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "Array"
+ value 24)
+ (object Attribute
+ tool "IDL"
+ name "Sequence"
+ value 47)))))
+ (object Attribute
+ tool "IDL"
+ name "default__Role"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "NameIfUnlabeled"
+ value "the_$supplier")
+ (object Attribute
+ tool "IDL"
+ name "GenerateDataMember"
+ value TRUE)
+ (object Attribute
+ tool "IDL"
+ name "DataMemberName"
+ value "$relationship")
+ (object Attribute
+ tool "IDL"
+ name "GenerateForwardReference"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "IsReadOnly"
+ value FALSE)
+ (object Attribute
+ tool "IDL"
+ name "BoundedRoleType"
+ value ("AssocTypeSet" 47))
+ (object Attribute
+ tool "IDL"
+ name "AssocTypeSet"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "Array"
+ value 24)
+ (object Attribute
+ tool "IDL"
+ name "Sequence"
+ value 47)))))
+ (object Attribute
+ tool "IDL"
+ name "default__Uses"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "GenerateForwardReference"
+ value FALSE)))
+ (object Attribute
+ tool "IDL"
+ name "default__Subsystem"
+ value (list Attribute_Set
+ (object Attribute
+ tool "IDL"
+ name "Directory"
+ value "AUTO GENERATE")))
+ (object Attribute
+ tool "IDL"
+ name "HiddenTool"
+ value FALSE)
+ (object Attribute
+ tool "SCC"
+ name "HiddenTool"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "propertyId"
+ value "809135969")
+ (object Attribute
+ tool "Ecore"
+ name "default__Category"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "packageName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "nsPrefix"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "nsURI"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "basePackage"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "prefix"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "annotation"
+ value "")))
+ (object Attribute
+ tool "Ecore"
+ name "default__Class"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "classifierName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "constraints"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "xmlName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "xmlContentKind"
+ value ("ContentKind" 0))
+ (object Attribute
+ tool "Ecore"
+ name "ContentKind"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "Unspecified"
+ value 0)
+ (object Attribute
+ tool "Ecore"
+ name "Empty"
+ value 1)
+ (object Attribute
+ tool "Ecore"
+ name "Simple"
+ value 2)
+ (object Attribute
+ tool "Ecore"
+ name "Mixed"
+ value 3)
+ (object Attribute
+ tool "Ecore"
+ name "ElementOnly"
+ value 4)))
+ (object Attribute
+ tool "Ecore"
+ name "annotation"
+ value "")))
+ (object Attribute
+ tool "Ecore"
+ name "default__Operation"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "operationName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "annotation"
+ value "")))
+ (object Attribute
+ tool "Ecore"
+ name "default__Attribute"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "attributeName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "isTransient"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "isVolatile"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "isChangeable"
+ value TRUE)
+ (object Attribute
+ tool "Ecore"
+ name "isUnsettable"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "isUnique"
+ value TRUE)
+ (object Attribute
+ tool "Ecore"
+ name "isID"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "xmlName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "xmlNamespace"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "xmlFeatureKind"
+ value ("FeatureKind" 0))
+ (object Attribute
+ tool "Ecore"
+ name "FeatureKind"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "Unspecified"
+ value 0)
+ (object Attribute
+ tool "Ecore"
+ name "Simple"
+ value 1)
+ (object Attribute
+ tool "Ecore"
+ name "Attribute"
+ value 2)
+ (object Attribute
+ tool "Ecore"
+ name "Element"
+ value 4)))
+ (object Attribute
+ tool "Ecore"
+ name "annotation"
+ value "")))
+ (object Attribute
+ tool "Ecore"
+ name "default__Role"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "referenceName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "isTransient"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "isVolatile"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "isChangeable"
+ value TRUE)
+ (object Attribute
+ tool "Ecore"
+ name "isUnsettable"
+ value FALSE)
+ (object Attribute
+ tool "Ecore"
+ name "isResolveProxies"
+ value TRUE)
+ (object Attribute
+ tool "Ecore"
+ name "xmlName"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "xmlNamespace"
+ value "")
+ (object Attribute
+ tool "Ecore"
+ name "xmlFeatureKind"
+ value ("FeatureKind" 0))
+ (object Attribute
+ tool "Ecore"
+ name "FeatureKind"
+ value (list Attribute_Set
+ (object Attribute
+ tool "Ecore"
+ name "Unspecified"
+ value 0)
+ (object Attribute
+ tool "Ecore"
+ name "Simple"
+ value 1)
+ (object Attribute
+ tool "Ecore"
+ name "Attribute"
+ value 2)
+ (object Attribute
+ tool "Ecore"
+ name "Element"
+ value 4)))
+ (object Attribute
+ tool "Ecore"
+ name "annotation"
+ value ""))))
+ quid "40C81DB90282"))
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/.cvsignore b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/.cvsignore
new file mode 100644
index 000000000..74b59e474
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/.cvsignore
@@ -0,0 +1 @@
+~*
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/ConversionAction.png b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/ConversionAction.png
new file mode 100644
index 000000000..4c3a8f239
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/ConversionAction.png
Binary files differ
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/SelectAModelImporter.png b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/SelectAModelImporter.png
new file mode 100644
index 000000000..d5bf7492d
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/SelectAModelImporter.png
Binary files differ
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/bugs.html b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/bugs.html
new file mode 100644
index 000000000..841c6e381
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/bugs.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <title>QVT Rose UML Importer Bugs</title>
+</head>
+
+<body>
+<h1>QVT Rose UML Importer Bugs</h1>
+None known.
+</body>
+</html> \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/changes.html b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/changes.html
new file mode 100644
index 000000000..f2f634631
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/changes.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <title>QVT Rose UML Importer Changes</title>
+</head>
+<body>
+<h1>QVT Rose UML Importer Changes</h1>
+Formerly the UMLX Rose UML Importer.
+<h3>QVT Rose UML 0.7.0</h3>
+Promoted from GMT/UMLX to M2M.
+<h3>UMLX Rose UML 1.2.0 (8-Jun-2008)</h3>
+Generation of traditionalemof (no PrimitiveTypes package) added.
+<br>
+Unnavigable opposite role names modelled using EMOF comments/Ecore annotations
+eliminating the need for max/min models.
+<br>
+Unity upperbound features forced to be ordered.
+<br>
+EMOF namespace changed to http://schema.omg.org/spec/MOF/2.0/emof.xml.
+<h3>UMLX Rose UML 1.1.0 (24-Sep-2007)</h3>
+Documentation added.
+<br>
+Conversion action added to support QVT model transformation and
+uni-directional association variants.
+<h3>UMLX Rose UML 1.0.0 (6-Sep-2007)</h3>
+Original importer variant with support for ordered constraints.
+</body>
+</html>
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/epl-v10.html b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/epl-v10.html
new file mode 100644
index 000000000..720642144
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/epl-v10.html
@@ -0,0 +1,319 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
+<meta name="ProgId" content="Word.Document">
+<meta name="Generator" content="Microsoft Word 9">
+<meta name="Originator" content="Microsoft Word 9">
+<link rel="File-List" href="http://www.eclipse.org/legal/Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml"><title>Eclipse Public License - Version 1.0</title><!--[if gte mso 9]><xml>
+ <o:DocumentProperties>
+ <o:Revision>2</o:Revision>
+ <o:TotalTime>3</o:TotalTime>
+ <o:Created>2004-03-05T23:03:00Z</o:Created>
+ <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
+ <o:Pages>4</o:Pages>
+ <o:Words>1626</o:Words>
+ <o:Characters>9270</o:Characters>
+ <o:Lines>77</o:Lines>
+ <o:Paragraphs>18</o:Paragraphs>
+ <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
+ <o:Version>9.4402</o:Version>
+ </o:DocumentProperties>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:WordDocument>
+ <w:TrackRevisions/>
+ </w:WordDocument>
+</xml><![endif]-->
+
+
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+ {font-family:Tahoma;
+ panose-1:2 11 6 4 3 5 4 4 2 4;
+ mso-font-charset:0;
+ mso-generic-font-family:swiss;
+ mso-font-pitch:variable;
+ mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {mso-style-parent:"";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ font-family:"Times New Roman";
+ mso-fareast-font-family:"Times New Roman";}
+p
+ {margin-right:0in;
+ mso-margin-top-alt:auto;
+ mso-margin-bottom-alt:auto;
+ margin-left:0in;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ font-family:"Times New Roman";
+ mso-fareast-font-family:"Times New Roman";}
+p.BalloonText, li.BalloonText, div.BalloonText
+ {mso-style-name:"Balloon Text";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:8.0pt;
+ font-family:Tahoma;
+ mso-fareast-font-family:"Times New Roman";}
+@page Section1
+ {size:8.5in 11.0in;
+ margin:1.0in 1.25in 1.0in 1.25in;
+ mso-header-margin:.5in;
+ mso-footer-margin:.5in;
+ mso-paper-source:0;}
+div.Section1
+ {page:Section1;}
+-->
+</style></head>
+
+<body style="" lang="EN-US">
+
+<div class="Section1">
+
+<p style="text-align: center;" align="center"><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style="font-size: 10pt;">THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style="font-size: 10pt;">1. DEFINITIONS</span></b> </p>
+
+<p><span style="font-size: 10pt;">"Contribution" means:</span> </p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear="left">
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i)
+changes to the Program, and</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii)
+additions to the Program;</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style="font-size: 10pt;">"Contributor" means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style="font-size: 10pt;">"Licensed Patents " mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style="font-size: 10pt;">"Program" means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style="font-size: 10pt;">"Recipient" means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style="font-size: 10pt;">2. GRANT OF RIGHTS</span></b> </p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span style="color: red;"> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style="color: green;"> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style="font-size: 10pt;">3. REQUIREMENTS</span></b> </p>
+
+<p><span style="font-size: 10pt;">A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b)
+its license agreement:</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style="color: blue;"> </span></span></p>
+
+<p><span style="font-size: 10pt;">When the Program is made available in source
+code form:</span> </p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+it must be made available under this Agreement; and </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style="font-size: 10pt;">Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style="font-size: 10pt;">Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style="font-size: 10pt;">4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style="font-size: 10pt;">Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor ("Commercial
+Contributor") hereby agrees to defend and indemnify every other
+Contributor ("Indemnified Contributor") against any losses, damages and
+costs (collectively "Losses") arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style="font-size: 10pt;">For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style="font-size: 10pt;">5. NO WARRANTY</span></b> </p>
+
+<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style="font-size: 10pt;">6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style="font-size: 10pt;">7. GENERAL</span></b> </p>
+
+<p><span style="font-size: 10pt;">If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style="font-size: 10pt;">If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style="font-size: 10pt;">All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style="font-size: 10pt;">Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style="font-size: 10pt;">This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
+
+</div>
+
+</body></html> \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/index.html b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/index.html
new file mode 100644
index 000000000..17555f642
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/index.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <title>QVT Rose UML Importer</title>
+</head>
+
+<body>
+<h1>QVT Rose UML Importer</h1>
+<p>
+The QVT Rose UML Importer supports conversion of a UML model defined by class diagrams
+in an IBM Rational Rose MDL file to Ecore or EMOF files suitable for use with
+EMF and other modeling tools.
+</p>
+<p>
+Subtle but critical differences between the Rose UML Importer and the Rose Importer that
+forms part of EMF are discussed below.
+</p>
+<h3>Operation</h3>
+<p>
+The QVT Rose UML Importer supports two interactive modes of operation.
+</p>
+<p>
+The traditional Import model behavior is available, when loading a genmodel as
+part of EMF model or project creation, or when reloading a genmodel.
+</p>
+<p>
+An alternative conversion action is available for MDL files.
+</p>
+<p>
+The traditional import is also available as a standalone program or Ant task for
+those skilled in resolving Eclipse class paths (see <a href="readme.html">readme.html</a>).
+</p>
+
+<h2> Differences between QVT Rose UML Importer and EMF Rose Importer</h2>
+
+<h3>EReference.ordered</h3>
+<p>
+The standard EMF Rose Importer does not define EReference.ordered so it takes the Ecore default
+which is ordered.
+</p>
+<p>
+The QVT RoseUML Importer sets EReference.ordered according to the presence of the ordered
+keyword as one of the constraints on an Association. For unit upper-bound features ordered
+is enforced.
+</p>
+<p>
+[This is arguably a bug fix, however the Rose Importer behavior is well-established.
+Fixing this bug would have widespread albeit probably trivial impact on existing clients
+and so failure to observe the ordered constraint is a feature not a bug.]
+</p>
+
+<h3>Navigability</h3>
+<p>
+The standard EMF Rose Importer generates a pair of mutually opposite EReferences for bidirectional
+associations and a single EReference for unidirectional associations. This is appropriate
+for code generation style use of the subsequent model, but, because it discards the role
+name and multiplicity of the opposite end, it is inadequate for meta-modelling purposes.
+</p>
+<p>
+The QVT Rose UML Importer, when invoked as a conversion action, provides the missing unnavigable
+role name as an EMOF comment or as an Ecore EAnnotation in accoradnce with the parctice
+defined by <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=229998">Bugzilla 229998</a>.
+</p>
+<h3>Omitted EReference.name</h3>
+<p>
+The standard EMF Rose Importer generates names for missing roles from the associated type.
+</p>
+<p>
+The QVT Rose UML Importer does the same but converts the first letter to lowercase
+as required by OCL 06-05-01 7.5.3 Missing AssocoiationEnd names.
+</p>
+
+<h2>Operation</h2>
+
+<h3>genmodel load/reload</h2>
+<p>
+The traditional Import model behavior is available when creating a genmodel as
+part of a new
+EMF model (e.g. <tt>New->Other...->EMF Modeling Framework->EMF Model</tt>)
+or project
+(e.g. <tt>New->Project...->EMF Modeling Framework->EMF Model</tt>),
+and when reloading the genmodel (<tt>Reload...</tt> from the *.genmodel context-sensitive menu).
+</p>
+<p align=center><img src="SelectAModelImporter.png" border="0"/>
+<p>
+The Rose UML behavior differs by observing ordered constriants.
+</p>
+
+<h3>MDL conversion</h2>
+
+The alternative conversion action is available from the *.mdl context-sensitive menu.
+<p align=center><img src="ConversionAction.png" border="0"/>
+</p>
+<p>
+The action initiates loading of the <tt><i>model</i>.mdl</tt> and generation of:
+<li>Ecore files (with <tt>*.ecore</tt> extension in an <tt>ecore</tt> folder)</li>
+<li>EMOF files (with <tt>*.xml</tt> extension in an <tt>emof</tt> folder)</li>
+</p>
+<p>Three distinct packaging options
+<li>one package per file (named <tt><i>package</i>.*</tt>)
+<li>all packages in one file (named <tt><i>model</i>.*</tt>)
+<li>all package contents in a file containing a flattened package (named <tt>Flat<i>model</i>.*</tt>)
+</p>
+<p>Three distinct unidirectional association representation options
+<li>semi-opposite with two EReferences but only one non-null eOpposite (named <tt>*.*</tt>)
+<li>navigability increased by using two EReferences with mutual eOpposites (named <tt>*.max.*</tt>)
+<li>elimination of non-navigable EReferences (named <tt>*.min.*</tt>)
+</p>
+<p>
+This facility was developed to support the OMG QVT 1.0 specification, for which
+EMOF is needed to support OMG standards and Ecore as a convenience for many users.
+</p>
+<p>
+The one file per package and all packages in one file formats provide alternatives
+for slightly defective tools that may have problems with multi-package meta-models.
+The flattened representation gives a further option for very defective tools.
+</p>
+<p>
+QVT requires that all associations are navigable in both directions for the purposes
+of transformation pattern matching. This conflicts with the conventional EMF usage
+in which non-navigable ends of associations have no corresponding EReference
+to define their roles and multiplicities. The three navigability representations
+provide the traditional minimal representation for code generation, and an exact
+representation for transformation pattern matching. Since the exact representation
+uses asymmetric opposites, it may cause trouble for some tools. A further option
+in which all associations are bidirectional is provided for these tools.
+</p>
+<p>
+The QVT models with enhanced navigability add additional EReferences to EMOF
+and EssentialOCL classes, and comply with the EMOF specification of a PrimitiveTypes
+package. The <tt>http://schema.omg.org/spec/mof/2.0/emof.xml</tt> is used for a combined
+EMOF and PrimitiveTypes package. Therefore if the source UML model contains an EMOF
+and a PrimitiveTypes package, a further set of Ecore files are generated in the
+<tt>traditionalEcore</tt> folder. These files omit
+non-navigable EReferences and the PrimitiveTypes package whose contents
+are moved to the EMOF package. Additionally the namespace of the EMOF
+package is changed to <tt>http://schema.omg.org/spec/MOF/2.0/emof.xml</tt>.
+</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/installation.html b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/installation.html
new file mode 100644
index 000000000..8a825db02
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/installation.html
@@ -0,0 +1,45 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <title>QVT Rose UML Importer Installation</title>
+</head>
+<body>
+<h1>QVT Rose UML Importer Installation Installation</h1>
+<p>The QVT Rose UML Importer Installation requires Eclipse 3.4 (Ganymede) for
+usage with and generation of Ecore.
+<p>Accurate generation of EMOF requires EMF 2.4.0.
+<ul>
+<li>Java 1.5.0</LI>
+<li><a href="http://download.eclipse.org/eclipse/downloads">Eclipse 3.4</a></li>,
+<li><a href="http://www.eclipse.org/modeling/emf/downloads/?project=emf">EMF 2.4.0</a></li>,
+</ul>
+<h2>Installation and Building</h2>
+Check out each of
+<ul>
+<li><tt>org.eclipse.emf/org.eclipse.emf/plugins/org.eclipse.emf.ant</tt>
+<li><tt>org.eclipse.emf/org.eclipse.emf/plugins/org.eclipse.emf.importer.rose</tt>
+<li><tt>org.eclipse.m2m/org.eclipse.qvt.declarative/tools/org.eclipse.qvt.declarative.importer.roseuml</tt>
+</ul>
+from <tt>dev.eclipse.org</tt> <tt>/cvsroot/modeling</tt> into the default workspace location.
+<br>
+(N.B. use of a non-default may fail to build properly - see Bugzilla 233944).
+<p>
+Select <tt>org.eclipse.emf.ant/plugin.xml</tt> and invoke <tt>PDE Tools->Create Ant Build File</tt>.
+<br>
+Select <tt>org.eclipse.emf.ant/build.xml</tt> and invoke <tt>Run As->Ant Build</tt>.
+<p>
+Select <tt>org.eclipse.emf.importer.rose/plugin.xml</tt> and invoke <tt>PDE Tools->Create Ant Build File</tt>.
+<br>
+Select <tt>org.eclipse.emf.importer.rose/build.xml</tt> and invoke <tt>Run As->Ant Build</tt>.
+<p>
+Select <tt>org.eclipse.qvt.declarative.importer.roseuml/plugin.xml</tt> and invoke <tt>PDE Tools->Create Ant Build File</tt>.
+<br>
+Select <tt>org.eclipse.qvt.declarative.importer.roseuml/build.xml</tt> and invoke <tt>Run As->Ant Build</tt>.
+<p>
+Now invoke a nested Eclipse Configuration that includes the above plug-ins.
+<br>
+Select a Rose <tt>*.mdl</tt> file and invoke <tt>Rose UML Tools->MDL to Ecore and EMOF</tt>.
+
+</body>
+</html>
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/html/readme.html b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/readme.html
new file mode 100644
index 000000000..eebf22508
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/html/readme.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>org.eclipse.emf.importer.roseuml Read Me</title>
+</head>
+<body lang="EN-US">
+
+<em>The following description is copied from org.eclipse.emf.importer.rose, which
+this plug-in almost duplicates. See <a href="installation.html">Installation</a>
+for specific instructions on getting this plug-in and its dependents to install and build.
+</em>
+<h3>Introduction</h3>
+<p>Usage of the QVT Rose UML importer is almost identical to the standard EMF Rose usage. The differences is that the
+RoseUML conversions apply a UML interpreation to Association Role Constraints such as {ordered}.
+The normal Rose conversion ignores these constraints and consequently treats all associations as ordered.</p>
+<p>This document describes how you can use scripts to generate code from a Rose UML model. The
+script can be either a regular shell script that invokes <a href="#headlessApplication">Eclipse headless
+applications</a> or an Ant script that invokes the <a href="#antTasks">task</a> provided by this plugin.</p>
+
+<h3><a name="overallComments">Overall Comments</a></h3>
+<ul>
+<li>If you didn't extract this plugin from CVS, the &quot;examples&quot; directory mentioned
+in this document is available in the EMF source plugin
+(org.eclipse.emf.source_<i>&lt;version&gt;</i>/src/org.eclipse.emf.importer.rose_<i>&lt;version&gt;</i>).
+<br/><br/></li>
+<li>Before running your build scripts or the examples provided here, make sure you have the 2
+jar files required by this plugin (&quot;importer.roseuml.jar&quot; and
+&quot;importer.roseuml.tasks.jar&quot;) and also the 2 jar files required by the <tt>org.eclipse.emf.ant</tt>
+plugin (&quot;emf.ant.jar&quot; and &quot;emf.ant.tasks.jar&quot;). If necessary, Eclipse
+can generate them for you. All you need to do is to run the Ant script created by PDE when you right click on the manifest file
+and select &quot;PDE Tools&gt;Create Ant Build File&quot;.
+<br/><br/></li>
+<li>Although the applications and task mentioned here must be executed by Eclipse (usually in headless mode), they can
+work on files located in any directory. In other words, your models, templates and other files don't need
+to be in the &quot;plugins&quot; directory nor in the workspace.
+<br/><br/></li>
+<li>In order to preserve the original state of this plugin's &quot;examples&quot; directory, you
+should copy it to a different location and run the Ant scripts from there.
+<br/><br/></li>
+<li>Starting a new JVM process and invoking Eclipse are expensive operations. Your build will
+perform better if you are able to group the steps that require Eclipse in a few scripts
+(one script would be ideal). This is probably a reason to use Ant instead of invoking the
+applications - you can generate code for multiple models using one single Ant script.
+<br/><br/></li>
+<li>The &quot;examples/library&quot; directory contains a Rose model, and shell and Ant scripts
+to generate its code.
+</li>
+</ul>
+
+<h3><a name="headlessApplication">Rose and Generator Applications</a></h3>
+<p>The application provided by this plugin generates the ecore and genmodel files from models defined
+using Rose.</p>
+<table border="1" cellpadding="2" cellspacing="0"
+summary="Lists the details about the Rose application.">
+ <tr><td colspan="2">Rose application details</td></tr>
+ <tr><td>ID</td><td><tt>org.eclipse.emf.importer.roseuml.RoseUML2GenModel</tt></td></tr>
+ <tr><td>Class</td><td><tt>org.eclipse.emf.importer.roseuml.RoseUMLImporterApplication</tt></td></tr>
+</table>
+<p>To generate the actual Java code you will need to use a second application, provided by
+the &quot;org.eclipse.emf.codegen.ecore&quot; plugin.</p>
+<table border="1" cellpadding="2" cellspacing="0"
+summary="Lists the details about the Generator application.">
+ <tr><td colspan="2">Generator application details</td></tr>
+ <tr><td>ID</td><td><tt>org.eclipse.emf.codegen.ecore.Generator</tt></td></tr>
+ <tr><td>Class</td><td><tt>org.eclipse.emf.codegen.ecore.Generator</tt></td></tr>
+</table>
+<p>In order to run these or any other Eclipse application, you need to execute the following
+command (without the line breaks):</p>
+<p>
+java
+<br/>&nbsp;&nbsp;-classpath <i>&lt;eclipseDir&gt;</i>/startup.jar org.eclipse.core.launcher.Main
+<br/>&nbsp;&nbsp;-data <i>&lt;full path to a workspace - ideally an empty directory&gt;</i>
+<br/>&nbsp;&nbsp;-application <i>&lt;application ID&gt;</i>
+<br/>&nbsp;&nbsp;<i>&lt;application arguments&gt;</i>
+</p>
+<p>The directory &quot;examples/library/build&quot; has shell scripts that generate the code for
+the model provided. If you have any questions after reading and experimenting with it, look at the
+applications's javadoc for more details. Also, check the application's class
+&quot;getUsage()&quot; method for the list of possible arguments.</p>
+
+<h3><a name="antTasks">Rose Ant Task</a></h3>
+<p>The Rose task details are:</p>
+<table border="1" cellpadding="2" cellspacing="0"
+summary="Lists the details about the Rose task.">
+ <tr><td>Name</td><td><tt>emf.Rose2Java</tt></td></tr>
+ <tr><td>Class</td><td><tt>org.eclipse.emf.importer.roseuml.taskdefs.RoseUMLGeneratorTask</tt></td></tr>
+</table>
+<p>This is the usual command line to run an Ant script using a headless Eclipse instance (remove the line breaks):</p>
+<p>
+java
+<br/>&nbsp;&nbsp;-classpath <i>&lt;eclipseDir&gt;</i>/startup.jar org.eclipse.core.launcher.Main
+<br/>&nbsp;&nbsp;-data <i>&lt;full path to a workspace - ideally an empty directory&gt;</i>
+<br/>&nbsp;&nbsp;-application org.eclipse.ant.core.antRunner
+<br/>&nbsp;&nbsp;-buildfile <i>&lt;full path to your script&gt;</i>
+</p>
+<p>The directory &quot;examples/library/build&quot; has an Ant script that generate the code for
+the model provided. The task's javadoc has lots of information you may find useful.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/icons/full/obj16/RoseModelFile.gif b/archive/org.eclipse.qvt.declarative.importer.roseuml/icons/full/obj16/RoseModelFile.gif
new file mode 100644
index 000000000..2aae55249
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/icons/full/obj16/RoseModelFile.gif
Binary files differ
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.properties b/archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.properties
new file mode 100644
index 000000000..9196bb12d
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.properties
@@ -0,0 +1,40 @@
+# /**
+# * <copyright>
+# *
+# * Copyright (c) 2002-2005 IBM Corporation and others.
+# * All rights reserved. This program and the accompanying materials
+# * are made available under the terms of the Eclipse Public License v1.0
+# * which accompanies this distribution, and is available at
+# * http://www.eclipse.org/legal/epl-v10.html
+# *
+# * Contributors:
+# * IBM - Initial API and implementation
+# *
+# * </copyright>
+# *
+# * $Id: plugin.properties,v 1.3 2009/06/06 18:14:26 ewillink Exp $
+# */
+
+# NLS_MESSAGEFORMAT_VAR
+
+# ==============================================================================
+# Do not change the properties between this line and the last line containing:
+# %%% END OF TRANSLATED PROPERTIES %%%
+# Instead, either redefine an existing property, or create a new property,
+# append it to the end of the file, and change the code to use the new name.
+# ==============================================================================
+
+# ==============================================================================
+# %%% END OF TRANSLATED PROPERTIES %%%
+# The above properties have been shipped for translation.
+# ==============================================================================
+
+pluginName = QVT Declarative Rose UML Importer
+providerName = Eclipse Modeling Project
+
+_UI_RoseUMLModelImporter_label = Rose UML class model
+_UI_RoseUMLModelImporter_description = Create the Ecore model based on a Rose UML class diagram
+
+_UI_RoseUMLModelImport_title = Rose UML Model Import
+_UI_RoseUMLModelImportFile_description = Specify a '.mdl' file, load and specify any path map symbols, and load the model
+_UI_RoseUMLModelImportNewProject_description = Specify a '.mdl' file, load and specify any path map symbols, load the model, and choose a file name for the generator model
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.xml b/archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.xml
new file mode 100644
index 000000000..7e6febd35
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/plugin.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+ <extension id="RoseUML2GenModel" point="org.eclipse.core.runtime.applications">
+ <application>
+ <run class="org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporterApplication" />
+ </application>
+ </extension>
+
+ <extension point="org.eclipse.emf.importer.modelImporterDescriptors">
+ <modelImporterDescriptor id="org.eclipse.qvt.declarative.importer.roseuml" name="%_UI_RoseUMLModelImporter_label" icon="icons/full/obj16/RoseModelFile.gif" extensions="mdl" description="%_UI_RoseUMLModelImporter_description" wizard="org.eclipse.qvt.declarative.importer.roseuml.ui.RoseUMLImporterWizard" />
+ </extension>
+
+ <extension point="org.eclipse.ant.core.extraClasspathEntries">
+ <extraClasspathEntry library="ant_tasks/importer.roseuml.tasks.jar" />
+ </extension>
+
+ <extension point="org.eclipse.ant.core.antTasks">
+ <antTask library="ant_tasks/importer.roseuml.tasks.jar" name="emf.RoseUML2Java" headless="true" class="org.eclipse.qvt.declarative.importer.roseuml.taskdefs.RoseUMLGeneratorTask" />
+ </extension>
+
+ <extension point="org.eclipse.ui.popupMenus">
+ <objectContribution id="org.eclipse.qvt.declarative.importer.roseuml.contribution1"
+ objectClass="org.eclipse.core.resources.IFile"
+ nameFilter="*.mdl" >
+ <menu id="org.eclipse.qvt.declarative.importer.roseuml.menu1"
+ label="Rose UML Tools"
+ path="additions">
+ <separator name="group1"/>
+ </menu>
+ <action id="org.eclipse.qvt.declarative.importer.roseuml.newAction"
+ label="MDL to Ecore and EMOF"
+ class="org.eclipse.qvt.declarative.importer.roseuml.actions.ConversionAction"
+ menubarPath="org.eclipse.qvt.declarative.importer.roseuml.menu1/group1"
+ enablesFor="1"/>
+ </objectContribution>
+ </extension>
+
+ <extension point="org.eclipse.help.toc">
+ <toc file="toc.xml" primary="true"/>
+ </extension>
+
+</plugin> \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporter.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporter.java
new file mode 100644
index 000000000..f300dcbbd
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporter.java
@@ -0,0 +1,48 @@
+/*******************************************************************************
+ * Copyright (c) 2007,2008 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml;
+
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.Monitor;
+import org.eclipse.emf.importer.rose.RoseImporter;
+import org.eclipse.qvt.declarative.importer.roseuml.builder.RoseUMLUtil;
+
+
+/**
+ */
+public class RoseUMLImporter extends RoseImporter
+{
+ protected Monitor monitor = null; // Non-null copy of computeEPackages argument
+
+ @Override public Diagnostic computeEPackages(Monitor monitor) throws Exception {
+ this.monitor = monitor;
+ try {
+ return super.computeEPackages(monitor);
+ } finally {
+ monitor = null;
+ }
+ }
+
+ @Override protected RoseUMLUtil createRoseUtil()
+ {
+ RoseUMLUtil roseUtil = new RoseUMLUtil(this, createResourceSet().getURIConverter());
+ roseUtil.getRoseEcoreBuilder().noQualify = noQualify;
+ roseUtil.getRoseEcoreBuilder().unsettablePrimitive = unsettablePrimitive;
+ return roseUtil;
+ }
+
+ @Override public String getID()
+ {
+ return "org.eclipse.qvt.declarative.importer.roseuml";
+ }
+
+ public Monitor getMonitor() { return monitor; }
+} \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterApplication.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterApplication.java
new file mode 100644
index 000000000..03f7d721a
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterApplication.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2007,2008 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml;
+
+import org.eclipse.emf.importer.ModelImporter;
+import org.eclipse.emf.importer.rose.RoseImporterApplication;
+
+public class RoseUMLImporterApplication extends RoseImporterApplication
+{
+ @Override
+ public RoseUMLImporter getRoseImporter()
+ {
+ return (RoseUMLImporter)getModelImporter();
+ }
+
+ @Override
+ protected ModelImporter createModelImporter()
+ {
+ return new RoseUMLImporter();
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterPlugin.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterPlugin.java
new file mode 100644
index 000000000..5874780bd
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/RoseUMLImporterPlugin.java
@@ -0,0 +1,108 @@
+/*******************************************************************************
+ * Copyright (c) 2007 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml;
+
+import org.eclipse.core.runtime.ILog;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.importer.ImporterPlugin;
+import org.eclipse.jface.dialogs.ErrorDialog;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * The <b>Plugin</b> for the EMF.CodeGen.Ecore.Rose library.
+ * @since 2.1.0
+ */
+public final class RoseUMLImporterPlugin extends EMFPlugin
+{
+ /**
+ * The plug-in ID
+ */
+ public static final String PLUGIN_ID = RoseUMLImporterPlugin.class.getPackage().getName();
+
+ /**
+ * The singleton instance of the plugin.
+ */
+ public static final RoseUMLImporterPlugin INSTANCE = new RoseUMLImporterPlugin();
+
+ /**
+ * The one instance of this class.
+ */
+ private static Implementation plugin;
+
+ /**
+ * Creates the singleton instance.
+ */
+ private RoseUMLImporterPlugin()
+ {
+ super(new ResourceLocator [] { ImporterPlugin.INSTANCE });
+ }
+
+ public static Status createErrorStatus(String string, Throwable e) {
+ return new Status(IStatus.ERROR, PLUGIN_ID, IStatus.OK, string, e);
+ }
+
+ /*
+ * Javadoc copied from base class.
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator()
+ {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * @return the singleton instance.
+ */
+ public static Implementation getPlugin()
+ {
+ return plugin;
+ }
+
+ public static void logError(String string, Throwable e) {
+ ILog log = getPlugin().getLog();
+ log.log(createErrorStatus(string, e));
+ }
+
+ public static void showError(final String string, final Exception e) {
+// logError(string, e);
+ Display display = Display.getDefault();
+ if (Thread.currentThread() != display.getThread()) {
+ display.syncExec(new Runnable() {
+ public void run() {
+ showError(string, e);
+ }});
+ }
+ else
+ ErrorDialog.openError(null, "RoseUML Error", null, createErrorStatus(string, e));
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ */
+ public static class Implementation extends EclipsePlugin
+ {
+ /**
+ * Creates an instance.
+ */
+ public Implementation()
+ {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/ConversionAction.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/ConversionAction.java
new file mode 100644
index 000000000..7867acbc6
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/ConversionAction.java
@@ -0,0 +1,133 @@
+/*******************************************************************************
+ * Copyright (c) 2007,2008 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.actions;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.List;
+import java.util.concurrent.CancellationException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.SubMonitor;
+import org.eclipse.emf.common.util.BasicMonitor;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.operation.IRunnableWithProgress;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporter;
+import org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporterPlugin;
+import org.eclipse.ui.IActionDelegate;
+import org.eclipse.ui.IObjectActionDelegate;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.progress.IProgressService;
+
+/**
+ * Action to load selected Ropse UML model and emit it as {per-package, all-packages, flattened
+ * packages}, {EMOF, Ecore}, {minimal, maximal, exact} associations models.
+ */
+public class ConversionAction implements IObjectActionDelegate
+{
+ private IFile file;
+
+ public ConversionAction() {
+ super();
+ }
+
+ /**
+ * @see IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
+ */
+ public void setActivePart(IAction action, IWorkbenchPart targetPart) {
+ }
+
+ /**
+ * @see IActionDelegate#run(IAction)
+ */
+ public void run(IAction action) {
+ IProgressService service = PlatformUI.getWorkbench().getProgressService();
+ IRunnableWithProgress runnable = new IRunnableWithProgress() {
+ public void run(IProgressMonitor monitor) {
+ String title = "Convert Rose UML to Ecore and EMOF";
+ SubMonitor subMonitor = SubMonitor.convert(monitor);
+ subMonitor.beginTask(title, 10);
+ subMonitor.subTask("Load Rose model");
+ if (!nextTask(subMonitor, title + ": Load Model", 1))
+ return;
+ RoseUMLImporter roseImporter = new RoseUMLImporter();
+// roseImporter.setUseSemiOpposites(true);
+ roseImporter.setModelFile(file);
+ IPath location = file.getLocation();
+ roseImporter.getPathMap().put("CURDIR", location.removeLastSegments(1).toString());;
+ try {
+ Diagnostic diagnostic = roseImporter.computeEPackages(BasicMonitor.toMonitor(subMonitor.newChild(4)));
+ int severity = diagnostic.getSeverity();
+ if (severity != Diagnostic.OK) {
+ RoseUMLImporterPlugin.showError(Utils.formatDiagnostic(diagnostic, ""), null);
+ }
+ } catch (CancellationException e) {
+ if (!monitor.isCanceled())
+ RoseUMLImporterPlugin.showError("Failed to compute Rose content", e);
+ return;
+ } catch (Exception e) {
+ RoseUMLImporterPlugin.showError("Failed to compute Rose content", e);
+ return;
+ }
+ List<EPackage> ePackages = roseImporter.getEPackages();
+ PackageManager packageManager = new PackageManager(file);
+ if (!nextTask(subMonitor, title + ": Emit models", 1))
+ return;
+ OneWayAssociations oneWayAssocs = new OneWayAssociations(ePackages);
+ oneWayAssocs.minimise();
+ packageManager.save(subMonitor, ePackages, "");
+/* if (!nextTask(subMonitor, title + ": Emit max models", 1))
+ return;
+ oneWayAssocs.maximise();
+ packageManager.save(subMonitor, ePackages, ".max");
+ if (!nextTask(subMonitor, title + ": Emit min models", 1))
+ return;
+ oneWayAssocs.minimise();
+ packageManager.save(subMonitor, ePackages, ".min"); */
+ if (!nextTask(subMonitor, title + ": Emit traditional models", 1))
+ return;
+ if (Utils.convertToTraditionalEMOF(ePackages)) {
+ packageManager.setEcorePath("traditionalEcore");
+ packageManager.setEMOFPath("traditionalEMOF");
+ packageManager.save(subMonitor, ePackages, "");
+ }
+ subMonitor.worked(1);
+ }
+ };
+ try {
+ service.run(true, true, runnable);
+ } catch (InvocationTargetException e) {
+ RoseUMLImporterPlugin.showError("Failed to start Rose converter", e);
+ } catch (InterruptedException e) {
+ }
+ }
+
+ protected boolean nextTask(SubMonitor subMonitor, String taskName, int worked) {
+ subMonitor.worked(worked);
+ if (subMonitor.isCanceled())
+ return false;
+ subMonitor.setTaskName(taskName);
+ return true;
+ }
+
+ /**
+ * @see IActionDelegate#selectionChanged(IAction, ISelection)
+ */
+ public void selectionChanged(IAction action, ISelection selection) {
+ file = (IFile) ((IStructuredSelection)selection).getFirstElement();
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/OneWayAssociations.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/OneWayAssociations.java
new file mode 100644
index 000000000..55f22f782
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/OneWayAssociations.java
@@ -0,0 +1,86 @@
+/*******************************************************************************
+ * Copyright (c) 2007 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.actions;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+/**
+ * OneWayAssociations manages a set of unidirectional associations providing facilities to
+ * convert them from semi-opposite (two EReferences with one eOpposite) to
+ * bi-directional (two EReferences with two mutual eOpposite) or
+ * uni-directional (one EREference an no eOpposite).
+ */
+public class OneWayAssociations
+{
+ private final Map<EReference, EReference> assocs = new HashMap<EReference, EReference>();
+
+ public OneWayAssociations(List<EPackage> ePackages) {
+ findOneWayAssociations(ePackages);
+ }
+
+ /**
+ * Find all one way associations within ePackages and its sub-packages, populating this
+ * with mappings from one end (the key) to the other end (the value) such that the
+ * key.eOpposite is non-null i.e. navigable to the value, and value.eOpposite is non-null
+ * i.e. not navigable to the key.
+ * @param ePackages
+ */
+ protected void findOneWayAssociations(List<EPackage> ePackages) {
+ for (EPackage ePackage : ePackages) {
+ for (EClassifier eClassifier : ePackage.getEClassifiers()) {
+ if (eClassifier instanceof EClass) {
+ for (EStructuralFeature eFeature : ((EClass) eClassifier).getEStructuralFeatures()) {
+ if (eFeature instanceof EReference) {
+ EReference from = (EReference) eFeature;
+ EReference to = from.getEOpposite();
+ if ((to != null) && (to.getEOpposite() == null))
+ assocs.put(from, to);
+ }
+ }
+ }
+ }
+ findOneWayAssociations(ePackage.getESubpackages());
+ }
+ }
+
+ /**
+ * Convert each one way association defined by a mapping from key to value into a single
+ * reference without any opposite. This orphans the value reference.
+ */
+ public void minimise() {
+ for (EReference from : assocs.keySet()) {
+ EReference to = assocs.get(from);
+ to.setEOpposite(null);
+ to.getEReferenceType().getEStructuralFeatures().remove(from);
+ }
+ }
+
+ /**
+ * Convert each one way association defined by a mapping from key to value into a fully navigable
+ * bidirectional pair of mutually opposite references.
+ */
+ public void maximise() {
+ for (EReference from : assocs.keySet()) {
+ EReference to = assocs.get(from);
+ to.setEOpposite(from);
+ if (from.eContainer() == null)
+ to.getEReferenceType().getEStructuralFeatures().add(from);
+ }
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/PackageManager.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/PackageManager.java
new file mode 100644
index 000000000..c361589c7
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/PackageManager.java
@@ -0,0 +1,341 @@
+/*******************************************************************************
+ * Copyright (c) 2007,2008 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.actions;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+import org.eclipse.emf.ecore.xmi.impl.EMOFResourceFactoryImpl;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
+import org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporterPlugin;
+
+/**
+ * PackageManager provides facilities top save a list of packages in EMOF and Ecore,
+ * using one resource per package, all packages in a single resource and all package
+ * contents flattened into a single package in a single resource.
+ */
+public class PackageManager
+{
+ /**
+ * SharedIdHierarchicalENamedElementIdCreator allocates xmi:id's re-using entries from an
+ * EObject to xmi:id map where possible, creating hierarchical names where necessary.
+ */
+ public static class SharedIdHierarchicalENamedElementIdCreator extends
+ XMIUtils.HierachicalENamedElementIdCreator
+ {
+ private final Map<EObject, String> idMap;
+
+ private SharedIdHierarchicalENamedElementIdCreator(Map<EObject, String> idMap) {
+ this.idMap = idMap;
+ }
+
+ @Override public String createId(EObject object, Set<String> knownIds) {
+ String id = idMap.get(object);
+ if (id == null) {
+ id = super.createId(object, knownIds);
+ if (id != null) {
+ idMap.put(object, id);
+ }
+ }
+ return id;
+ }
+ }
+
+ protected final Resource.Factory emofFactory = new EMOFResourceFactoryImpl();
+ protected final Resource.Factory ecoreFactory = new XMIResourceFactoryImpl();
+ private final IProject project;
+ private final IPath modelPath ;
+ private final String modelStem;
+ private IPath ecorePath;
+ private IPath emofPath;
+ private String ecoreExtension;
+ private String emofExtension;
+ private ResourceSet resourceSet = null;
+ private Map<EObject, String> idMap = null;
+
+ public PackageManager(IFile modelFile) {
+ this.project = modelFile.getProject();
+ IPath path = modelFile.getProjectRelativePath();
+ modelPath = path.removeLastSegments(1);
+ modelStem = path.removeFileExtension().lastSegment();
+ setEcorePath("ecore");
+ setEMOFPath("emof");
+ setEcoreExtension("ecore");
+ setEMOFExtension("xml");
+ }
+
+ /**
+ * Create an XMLResource at path within the current project, and prepare to save
+ * ePackages therein, by sorting packages, classifiers, structural features
+ * and operations into alphabetical order and assigning each a hierrachical xmi:id
+ * re-using xmi:ids from idMap wherever possible.
+ *
+ * @param ePackages
+ * @param path
+ * @return the resource
+ */
+ protected XMLResource createResource(List<EPackage> ePackages, IPath path) {
+ IFile file = project.getFile(path);
+ URI uri = URI.createPlatformResourceURI(file.getFullPath().toString(), true);
+ XMLResource resource = (XMLResource) getResourceSet().createResource(uri);
+ if (resource == null)
+ return null;
+ for (EPackage ePackage : ePackages) {
+ resource.getContents().add(ePackage);
+ Utils.sort(ePackage.getEClassifiers());
+ for (EClassifier eClassifier : ePackage.getEClassifiers()) {
+ if (eClassifier instanceof EClass) {
+ Utils.sort(((EClass) eClassifier).getEStructuralFeatures());
+ Utils.sort(((EClass) eClassifier).getEOperations());
+ }
+ }
+ }
+ XMIUtils.IdFilter idFilter = new XMIUtils.IdFilter()
+ {
+ public boolean createId(EObject object) {
+ if (object == null)
+ return false;
+ if (object.eClass() == EcorePackage.Literals.EANNOTATION)
+ return false;
+ if (object.eClass() == EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY)
+ return false;
+ return true;
+ }
+ };
+ XMIUtils.assignIds(resource, new SharedIdHierarchicalENamedElementIdCreator(getXMIidMap()), idFilter);
+ return resource;
+ }
+
+ public String getEMOFExtension() {
+ return emofExtension;
+ }
+
+ public IPath getEMOFPath() {
+ return emofPath;
+ }
+
+ public String getEcoreExtension() {
+ return ecoreExtension;
+ }
+
+ public IPath getEcorePath() {
+ return ecorePath;
+ }
+
+ public ResourceSet getResourceSet() {
+ if (resourceSet == null)
+ setResourceSet(new ResourceSetImpl());
+ return resourceSet;
+ }
+
+ public Map<EObject, String> getXMIidMap() {
+ if (idMap == null)
+ setXMIidMap(new HashMap<EObject, String>());
+ return idMap;
+ }
+
+ /**
+ * Save all ePackages in Ecore an EMOF format to a separate file for each package,
+ * named as
+ * @param ePackages
+ * @param midFix
+ */
+ public void save(IProgressMonitor monitor, List<EPackage> ePackages, String midFix) {
+ //
+ // Save all the packages to a composite file.
+ //
+ if (ePackages.size() > 1) {
+ saveAsEcore(monitor, ePackages, modelStem + midFix + "." + ecoreExtension);
+ saveAsEMOF(monitor, ePackages, modelStem + midFix + "." + emofExtension);
+ }
+ //
+ // Save the packages one by one to individual files.
+ //
+ if (monitor.isCanceled())
+ return;
+ if (ecorePath != null) {
+ List<XMLResource> ecoreResources = new ArrayList<XMLResource>();
+ getResourceSet().getResourceFactoryRegistry().getExtensionToFactoryMap().put("*", ecoreFactory);
+ for (EPackage ePackage : ePackages) {
+ List<EPackage> saveList = new ArrayList<EPackage>();
+ saveList.add(ePackage);
+ ecoreResources.add(createResource(saveList, ecorePath.append(ePackage.getName() + midFix + "." + ecoreExtension)));
+ }
+ for (XMLResource resource : ecoreResources)
+ saveResource(monitor, resource);
+ }
+ if (monitor.isCanceled())
+ return;
+ if (emofPath != null) {
+ List<XMLResource> emofResources = new ArrayList<XMLResource>();
+ getResourceSet().getResourceFactoryRegistry().getExtensionToFactoryMap().put("*", emofFactory);
+ for (EPackage ePackage : ePackages) {
+ List<EPackage> saveList = new ArrayList<EPackage>();
+ saveList.add(ePackage);
+ emofResources.add(createResource(saveList, emofPath.append(ePackage.getName() + midFix + "." + emofExtension)));
+ }
+ for (XMLResource resource : emofResources)
+ saveResource(monitor, resource);
+ }
+ //
+ // Create a package containing the contents of all packages and save it to a flattened file.
+ //
+ if (monitor.isCanceled())
+ return;
+ if (ePackages.size() > 1)
+ saveAsFlatPackage(monitor, ePackages, midFix);
+ }
+
+ /**
+ * Save the ePackages as an EMOF file named fileName on the emofPath, creating/re-using
+ * xmi:id's in/from idMap.
+ *
+ * @param ePackages to save
+ * @param fileName to save to
+ */
+ protected void saveAsEMOF(IProgressMonitor monitor, List<EPackage> ePackages, String fileName) {
+ if (monitor.isCanceled())
+ return;
+ if (emofPath != null) {
+ getResourceSet().getResourceFactoryRegistry().getExtensionToFactoryMap().put("*", emofFactory);
+ XMLResource emofResource = createResource(ePackages, emofPath.append(fileName));
+ saveResource(monitor, emofResource);
+ }
+ }
+
+ /**
+ * Save the ePackages as an Ecore file named fileName on the ecorePath, creating/re-using
+ * xmi:id's in/from idMap.
+ *
+ * @param ePackages to save
+ * @param fileName to save to
+ */
+ protected void saveAsEcore(IProgressMonitor monitor, List<EPackage> ePackages, String fileName) {
+ if (monitor.isCanceled())
+ return;
+ if (ecorePath != null) {
+ getResourceSet().getResourceFactoryRegistry().getExtensionToFactoryMap().put("*", ecoreFactory);
+ XMLResource ecoreResource = createResource(ePackages, ecorePath.append(fileName));
+ saveResource(monitor, ecoreResource);
+ }
+ }
+
+ /**
+ * Save the contents of all ePackages in a single flattened package named as the modeltem followed
+ * by midFix, sharing xmi:ids via idMap.
+ *
+ * @param ePackages to save
+ * @param midFix middle section of file name
+ */
+ protected void saveAsFlatPackage(IProgressMonitor monitor, List<EPackage> ePackages, String midFix) {
+ //
+ // Save the incoming package contents
+ //
+ Map<EPackage, List<EAnnotation>> oldAnnotations = new HashMap<EPackage, List<EAnnotation>>();
+ Map<EPackage, List<EClassifier>> oldClassifiers = new HashMap<EPackage, List<EClassifier>>();
+ Map<EPackage, List<EPackage>> oldSubpackages = new HashMap<EPackage, List<EPackage>>();
+ for (EPackage ePackage : ePackages) {
+ oldAnnotations.put(ePackage, new ArrayList<EAnnotation>(ePackage.getEAnnotations()));
+ oldClassifiers.put(ePackage, new ArrayList<EClassifier>(ePackage.getEClassifiers()));
+ oldSubpackages.put(ePackage, new ArrayList<EPackage>(ePackage.getESubpackages()));
+ }
+ //
+ // Create a Flat package to receive all contents
+ //
+ String name = "Flat" + modelStem;
+ String nsURI = ePackages.get(ePackages.size()-1).getNsURI();
+ IPath nsPath = new Path(nsURI);
+ nsPath = nsPath.removeLastSegments(1).append(name.toLowerCase() + ".xml");
+ EPackage flatPackage = EcoreFactory.eINSTANCE.createEPackage();
+ flatPackage.setName(name);
+ flatPackage.setNsURI(nsPath.toString());
+ flatPackage.setNsPrefix(name.toLowerCase());
+ //
+ // Move all contents into the Flat package
+ //
+ for (EPackage ePackage : ePackages) {
+ flatPackage.getEAnnotations().addAll(ePackage.getEAnnotations());
+ flatPackage.getEClassifiers().addAll(ePackage.getEClassifiers());
+ flatPackage.getESubpackages().addAll(ePackage.getESubpackages());
+ }
+ //
+ // Save the Flat package
+ //
+ List<EPackage> saveList = new ArrayList<EPackage>();
+ saveList.add(flatPackage);
+ saveAsEcore(monitor, saveList, name + midFix + "." + ecoreExtension);
+ saveAsEMOF(monitor, saveList, name + midFix + "." + emofExtension);
+ //
+ // Restore the incoming package contents
+ //
+ for (EPackage ePackage : ePackages) {
+ ePackage.getEAnnotations().addAll(oldAnnotations.get(ePackage));
+ ePackage.getEClassifiers().addAll(oldClassifiers.get(ePackage));
+ ePackage.getESubpackages().addAll(oldSubpackages.get(ePackage));
+ }
+ }
+
+ public void saveResource(IProgressMonitor monitor, XMLResource resource) {
+ if (monitor.isCanceled())
+ return;
+ try {
+ monitor.subTask("Saving " + resource.getURI());
+ resource.save(null);
+ } catch (IOException e) {
+ RoseUMLImporterPlugin.showError("Failed to save '" + resource.getURI() + "'", e);
+ }
+ }
+
+ public void setEMOFExtension(String emofExtension) {
+ this.emofExtension = emofExtension;
+ }
+
+ public void setEMOFPath(String emofPath) {
+ this.emofPath = emofPath != null ? modelPath.append(emofPath) : null;
+ }
+
+ public void setEcoreExtension(String ecoreExtension) {
+ this.ecoreExtension = ecoreExtension;
+ }
+
+ public void setEcorePath(String ecorePath) {
+ this.ecorePath = ecorePath != null ? modelPath.append(ecorePath) : null;
+ }
+
+ public void setResourceSet(ResourceSet resourceSet) {
+ this.resourceSet = resourceSet;
+ }
+
+ public void setXMIidMap(Map<EObject, String> idMap) {
+ this.idMap = idMap;
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/Utils.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/Utils.java
new file mode 100644
index 000000000..0d0506044
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/Utils.java
@@ -0,0 +1,98 @@
+/*******************************************************************************
+ * Copyright (c) 2007 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.actions;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.xmi.impl.EMOFExtendedMetaData;
+
+public class Utils
+{
+ /**
+ * If ePackages contains a PrimitiveTypes and an EMOF package, move all classifiers from
+ * PrimitiveTypes to EMOF, change the EMOF nsURI to http://schema.omg.org/spec/mof/2.0/emof.xmi
+ * and remove PrimitiveTypes from ePackages.
+ *
+ * @param ePackages
+ * @return true if conversion occurred
+ */
+ public static boolean convertToTraditionalEMOF(List<EPackage> ePackages) {
+ EPackage primitiveTypesPackage = Utils.findNamedElement(ePackages, "PrimitiveTypes");
+ EPackage emofPackage = Utils.findNamedElement(ePackages, "EMOF");
+ if ((primitiveTypesPackage == null) || (emofPackage == null))
+ return false;
+ emofPackage.getEClassifiers().addAll(primitiveTypesPackage.getEClassifiers());
+ emofPackage.setNsURI(EMOFExtendedMetaData.EMOF_PACKAGE_NS_URI_2_0);
+ ePackages.remove(primitiveTypesPackage);
+ return true;
+ }
+
+ public static <T extends ENamedElement> T findNamedElement(List<? extends T> elements, String name) {
+ for (T element : elements)
+ if (name.equals(element.getName()))
+ return element;
+ return null;
+ }
+
+ public static String formatDiagnostic(Diagnostic diagnostic, String prefix)
+ {
+ StringBuilder result = new StringBuilder();
+ result.append(prefix);
+// result.append("Diagnostic ");
+ switch (diagnostic.getSeverity())
+ {
+ case Diagnostic.OK: result.append("OK"); break;
+ case Diagnostic.INFO: result.append("INFO"); break;
+ case Diagnostic.WARNING: result.append("WARNING"); break;
+ case Diagnostic.ERROR: result.append("ERROR"); break;
+ case Diagnostic.CANCEL: result.append("CANCEL"); break;
+ default: result.append(Integer.toHexString(diagnostic.getSeverity())); break;
+ }
+// result.append(" source=");
+// result.append(diagnostic.getSource());
+ result.append(" code=");
+ result.append(diagnostic.getCode());
+ result.append(' ');
+ result.append(diagnostic.getMessage());
+ List<?> data = diagnostic.getData();
+ if ((data != null) && !data.isEmpty())
+ {
+ result.append(" data=");
+ result.append(data);
+ }
+ List<Diagnostic> children = diagnostic.getChildren();
+ if ((children != null) && !children.isEmpty())
+ for (Diagnostic child : children)
+ {
+ result.append('\n');
+ result.append(formatDiagnostic(child, prefix + " "));
+ }
+ return result.toString();
+ }
+
+ public static <T extends ENamedElement> void sort(EList<T> eList) {
+ List<T> list = new ArrayList<T>(eList);
+ Collections.sort(list, new Comparator<T>() {
+ public int compare(T o1, T o2) {
+ return o1.getName().compareTo(o2.getName());
+ }});
+ for (int i = 0; i < list.size(); i++) {
+ eList.move(i, list.get(i));
+ }
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/XMIUtils.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/XMIUtils.java
new file mode 100644
index 000000000..d514b61b8
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/actions/XMIUtils.java
@@ -0,0 +1,103 @@
+/*******************************************************************************
+ * Copyright (c) 2007,2008 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.actions;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Set;
+
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+/**
+ * This trimmed copy of org.eclipse.gmt.umlx.xmi.util split off to avoid
+ * undue QVT Rose UML dependencies on UMLX.
+ */
+public class XMIUtils
+{
+ public static interface IdCreator
+ {
+ public String createId(EObject eObject, Set<String> knownIds);
+ }
+
+ /**
+ * Create xmi:id's using the same hierarchical/URI fragment algorithm as EMOFResourceImpl
+ */
+ public static class HierachicalENamedElementIdCreator implements IdCreator
+ {
+ public HierachicalENamedElementIdCreator() {}
+
+ public String createId(EObject eObject, Set<String> knownIds) {
+ List<String> uriFragmentPath = new ArrayList<String>();
+ for (EObject container = eObject.eContainer(); container != null; container = eObject.eContainer()) {
+ uriFragmentPath.add(((InternalEObject)container).eURIFragmentSegment(eObject.eContainmentFeature(), eObject));
+ eObject = container;
+ }
+ StringBuffer result;
+ if (eObject instanceof ENamedElement)
+ result = new StringBuffer(((ENamedElement)eObject).getName());
+ else
+ result = new StringBuffer("_" + Integer.toString(eObject.eResource().getContents().indexOf(eObject)));
+ for (ListIterator<String> i = uriFragmentPath.listIterator(uriFragmentPath.size()); i.hasPrevious(); ) {
+ result.append('.');
+ result.append(i.previous());
+ }
+ return result.toString();
+ }
+ }
+
+ public static interface IdFilter
+ {
+ public boolean createId(EObject eObject);
+ }
+
+ /**
+ * Assign an xmi:id to all objects in resource. A non-null idFilter may choose whether an xmi:id
+ * is assigned. The idCreator is responsible for providing a candidate xmi:id, which, if not unique
+ * will be suffixed until it is.
+ *
+ * @param resource
+ * @param idCreator
+ * @param idFilter
+ */
+ public static void assignIds(Resource resource, IdCreator idCreator, IdFilter idFilter) {
+ if (!(resource instanceof XMLResource))
+ return;
+ XMLResource xmlResource = (XMLResource) resource;
+ final Set<String> knownIds = new HashSet<String>(256); // The XMLResource.getEObjectToIDMap() method is deprecated
+ // and the replacement slow since we need a total traversal
+ final List<EObject> idLess = new ArrayList<EObject>(100);
+ for (TreeIterator<EObject> iterator = resource.getAllContents(); iterator.hasNext(); ) {
+ EObject eObject = iterator.next();
+ String id = xmlResource.getID(eObject);
+ if (id != null)
+ knownIds.add(id);
+ else if ((idFilter == null) || idFilter.createId(eObject))
+ idLess.add(eObject);
+ }
+ for (EObject eObject : idLess) {
+ String id = idCreator.createId(eObject, knownIds);
+ if (id != null) {
+ String uniqueId = id;
+ for (int i = 1; knownIds.contains(uniqueId); i++)
+ uniqueId = id + '_' + i;
+ xmlResource.setID(eObject, uniqueId);
+ knownIds.add(uniqueId);
+ }
+ }
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLEcoreBuilder.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLEcoreBuilder.java
new file mode 100644
index 000000000..e39930952
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLEcoreBuilder.java
@@ -0,0 +1,200 @@
+/*******************************************************************************
+ * Copyright (c) 2007 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.builder;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.codegen.util.CodeGenUtil;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.xmi.impl.EMOFExtendedMetaData;
+import org.eclipse.emf.importer.rose.RoseImporterPlugin;
+import org.eclipse.emf.importer.rose.builder.RoseEcoreBuilder;
+import org.eclipse.emf.importer.rose.builder.TableObject;
+import org.eclipse.emf.importer.rose.parser.RoseNode;
+
+/**
+ * Traverses the RoseUML file and create Ecore object in memory.
+ * <p>
+ * The derived implementation
+ * <br>observes the {ordered} constraint and sets ordered accordingly
+ * <br>use comments/annotations for unnavigable opposite role names
+ * <br>use the OCL lower case default role naming
+ */
+public class RoseUMLEcoreBuilder extends RoseEcoreBuilder
+{
+ public static final String OMITTED_REFERENCE_NAME = "omitted";
+ protected Map<EReference, EReference> oneWayAssocs = new HashMap<EReference, EReference>();
+
+ public RoseUMLEcoreBuilder(RoseUMLUtil roseUtil)
+ {
+ super(roseUtil);
+ }
+
+ protected RoseUMLUtil getRoseUtil() {
+ return (RoseUMLUtil) roseUtil;
+ }
+
+ /**
+ * Mark any omitted reference name as missing, to avoid inherited fix up until we are
+ * ready to fix it up ourselves via validateReferenceName.
+ */
+ protected void invalidateReferenceName(EReference ref) {
+ String name = ref.getName();
+ if ((name == null) || (name.length() <= 0))
+ ref.setName(OMITTED_REFERENCE_NAME);
+ }
+
+ /**
+ * Override to setOrdered() according to "{ordered}" constraint.
+ */
+ @Override
+ protected void setEReferenceProperties(RoseNode roseNode, EReference eReference)
+ {
+ super.setEReferenceProperties(roseNode, eReference);
+ boolean isOrdered = getRoseUtil().hasOrderedConstraint(roseNode);
+ eReference.setOrdered(isOrdered);
+ RoseNode assocNode = roseNode.getParent().getParent();
+ Object eClass = assocNode.getNode();
+ if (eClass instanceof EClass) {
+ ((EClass) eClass).getEStructuralFeatures().add(eReference);
+ eStructuralFeatures.remove(eReference);
+ }
+ }
+
+ @Override
+ protected void setEReferenceIsContainment(EReference ref, RoseNode role1, RoseNode role2) {
+ super.setEReferenceIsContainment(ref, role1, role2);
+ if (ref.isContainment() || ref.isContainer()) {
+ ref.setResolveProxies(false);
+ if (ref.getEOpposite() != null)
+ ref.getEOpposite().setResolveProxies(false);
+ }
+ if (ref.getUpperBound() == 1)
+ ref.setOrdered(true);
+ }
+
+ /**
+ * Override to add reference naming resolution.
+ */
+ @Override
+ public void setETypeClassifier() {
+ super.setETypeClassifier();
+ for (EReference from : oneWayAssocs.keySet()) {
+ EReference to = oneWayAssocs.get(from);
+ boolean nameIsDefault = validateReferenceName(from);
+ validateReferenceName(to);
+ if (!nameIsDefault) {
+ EAnnotation eAnnotation = EcoreFactory.eINSTANCE.createEAnnotation();
+ eAnnotation.setSource(EMOFExtendedMetaData.EMOF_PROPERTY_OPPOSITE_ROLE_NAME_ANNOTATION_SOURCE);
+ eAnnotation.getDetails().put(EMOFExtendedMetaData.EMOF_COMMENT_BODY, from.getName());
+ to.getEAnnotations().add(eAnnotation);
+ }
+ to.setEOpposite(null);
+ }
+ }
+
+ /**
+ * Set omitted reference name to the target type with a leading lower case letter.
+ * (OCL 06-05-01 7.5.3 Missing AssociationEnd names).
+ *
+ * Returns true if the name is the default and so could be omitted.
+ */
+ protected boolean validateReferenceName(EReference ref) {
+ String typeName = CodeGenUtil.validJavaIdentifier(ref.getEType().getName());
+ String defaultName = Character.toLowerCase(typeName.charAt(0)) + typeName.substring(1);
+ String name = ref.getName();
+ if (name == OMITTED_REFERENCE_NAME) {
+ ref.setName(defaultName);
+ return true;
+ }
+ return defaultName.equals(name);
+ }
+
+ /**
+ * Override to reset eGenericType1, eGenericType2; a very cosmetic bug-fix.
+ */
+ @Override
+ protected void visitAssociation(RoseNode roseNode, String roseNodeValue,
+ String objectKey, String objectName, Object parent) {
+ eGenericType1 = null;
+ eGenericType2 = null;
+ super.visitAssociation(roseNode, roseNodeValue, objectKey, objectName, parent);
+ }
+
+ /**
+ * Override to create references for non-navigable roles too.
+ */
+ @Override
+ protected void visitRole(RoseNode roseNode, String roseNodeValue,
+ String objectKey, String objectName, Object parent) {
+ super.visitRole(roseNode, roseNodeValue, objectKey, objectName, parent);
+ RoseUMLUtil roseUtil = getRoseUtil();
+// if (roseUtil.getUseSemiOpposites()) {
+ if (ref1 != null && ref2 != null && role1 != null && role2 != null)
+ {
+ invalidateReferenceName(ref1);
+ invalidateReferenceName(ref2);
+ String ref1Quidu = role1.getRoseRefId();
+ if (ref1Quidu != null && !ref1Quidu.equals(""))
+ {
+ ref1Quidu = ref1Quidu.substring(1, ref1Quidu.length() - 1);
+ }
+ String ref2Quidu = role2.getRoseRefId();
+ if (ref2Quidu != null && !ref2Quidu.equals(""))
+ {
+ ref2Quidu = ref2Quidu.substring(1, ref2Quidu.length() - 1);
+ }
+ boolean ref1Navigable = role1.isNavigable();
+ boolean ref2Navigable = role2.isNavigable();
+ if (!ref1Navigable)
+ {
+ assert ref2Navigable;
+ roseUtil.putRef(ref1, ref2Quidu);
+ TableObject obj = (TableObject)roseUtil.getQuid(ref1Quidu);
+ if (obj != null)
+ {
+ roseUtil.putType(eGenericType1 == null ? ref1 : eGenericType1, obj.getName());
+ }
+ else
+ {
+ warning(RoseImporterPlugin.INSTANCE.getString("_UI_UnresolvedTypeNameFor_message", new Object []{
+ role1.getRoseSupplier(),
+ ref1.getName() }));
+ roseUtil.putType(eGenericType1 == null ? ref1 : eGenericType1, "EObject");
+ }
+ oneWayAssocs.put(ref1, ref2);
+ }
+ if (!ref2Navigable)
+ {
+ assert ref1Navigable;
+ roseUtil.putRef(ref2, ref1Quidu);
+ TableObject obj = (TableObject)roseUtil.getQuid(ref2Quidu);
+ if (obj != null)
+ {
+ roseUtil.putType(eGenericType2 == null ? ref2 : eGenericType2, obj.getName());
+ }
+ else
+ {
+ warning(RoseImporterPlugin.INSTANCE.getString("_UI_UnresolvedTypeNameFor_message", new Object []{
+ role2.getRoseSupplier(),
+ ref2.getName() }));
+ roseUtil.putType(eGenericType2 == null ? ref2 : eGenericType2, "EObject");
+ }
+ oneWayAssocs.put(ref2, ref1);
+ }
+ }
+// }
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLUtil.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLUtil.java
new file mode 100644
index 000000000..927350e4a
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/builder/RoseUMLUtil.java
@@ -0,0 +1,106 @@
+/*******************************************************************************
+ * Copyright (c) 2007,2008 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.builder;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.StringTokenizer;
+import java.util.concurrent.CancellationException;
+
+import org.eclipse.emf.common.util.Monitor;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.resource.URIConverter;
+import org.eclipse.emf.importer.rose.builder.RoseUtil;
+import org.eclipse.emf.importer.rose.builder.UnitTreeNode;
+import org.eclipse.emf.importer.rose.parser.RoseNode;
+import org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporter;
+
+/**
+ * Provide functions to process a Rose UML file.
+ * <p>
+ * The derived implementation supports access to inherited tables by the derived
+ * RoseUMLEcoreBuilder, maintenance of a monitor and access to the {ordered} constraint.
+ */
+public class RoseUMLUtil extends RoseUtil
+{
+ protected final RoseUMLImporter roseUMLImporter;
+
+ public RoseUMLUtil(RoseUMLImporter roseUMLImporter, URIConverter uriConverter)
+ {
+ super(uriConverter);
+ this.roseUMLImporter = roseUMLImporter;
+ roseEcoreBuilder = new RoseUMLEcoreBuilder(this);
+ }
+
+ @Override public UnitTreeNode createRoseUnitTreeAndTable(String fileNameNodeValue, UnitTreeNode topNode) throws Exception {
+ notifySubTask("Loading " + fileNameNodeValue, 0);
+ return super.createRoseUnitTreeAndTable(fileNameNodeValue, topNode);
+ }
+
+ /**
+ * Return the Rose Constraints string as a list of individual constraints formed
+ * by splitting at commas and then trimming whitespace.
+ * @param roseNode
+ * @return the individual constraints
+ */
+ public List<String> getConstraints(RoseNode roseNode) {
+ String constraintString = roseNode.getConstraints();
+ if (constraintString == null)
+ return Collections.emptyList();
+ List<String> constraints = new ArrayList<String>();
+ StringTokenizer tokenizer = new StringTokenizer(constraintString, ",");
+ while (tokenizer.hasMoreTokens())
+ constraints.add(tokenizer.nextToken().trim());
+ return constraints;
+ }
+
+ public Object getQuid(String quid) {
+ return quidTable.get(quid);
+ }
+
+ /**
+ * Return true if roseNode has an 'ordered' constraint.
+ * @param roseNode
+ * @return true if ordered
+ */
+ public boolean hasOrderedConstraint(RoseNode roseNode) {
+ List<String> constraints = getConstraints(roseNode);
+ for (String constraint : constraints)
+ if ("ordered".equals(constraint))
+ return true;
+ return false;
+ }
+
+ protected void notifySubTask(String subTaskName, int worked) {
+ Monitor monitor = roseUMLImporter.getMonitor();
+ if (monitor != null) {
+ if (monitor.isCanceled())
+ throw new CancellationException("Cancellation requested");
+ monitor.subTask(subTaskName);
+ monitor.worked(worked);
+ }
+ }
+
+ @Override public void processUnitTree(UnitTreeNode unitTree) throws Exception {
+ notifySubTask("Parsing Rose Model", 1);
+ super.processUnitTree(unitTree);
+ }
+
+ public void putRef(EReference ref, String quid) {
+ refTable.put(ref, quid);
+ }
+
+ public void putType(EObject eObject, String name) {
+ typeTable.put(eObject, name);
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLDetailPage.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLDetailPage.java
new file mode 100644
index 000000000..77e75e7c6
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLDetailPage.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2007 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.ui;
+
+import org.eclipse.emf.importer.ModelImporter;
+import org.eclipse.emf.importer.rose.ui.RoseDetailPage;
+import org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporterPlugin;
+
+
+/**
+ * @since 2.1.0
+ */
+public class RoseUMLDetailPage extends RoseDetailPage
+{
+ public RoseUMLDetailPage(ModelImporter modelImporter, String pageName)
+ {
+ super(modelImporter, pageName);
+
+ setTitle(RoseUMLImporterPlugin.INSTANCE.getString("_UI_RoseUMLModelImport_title"));
+ setDescription(RoseUMLImporterPlugin.INSTANCE.getString(showGenModel() ?
+ "_UI_RoseUMLModelImportNewProject_description" : "_UI_RoseUMLModelImportFile_description"));
+ }
+} \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLImporterWizard.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLImporterWizard.java
new file mode 100644
index 000000000..e6608aca4
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/src/org/eclipse/qvt/declarative/importer/roseuml/ui/RoseUMLImporterWizard.java
@@ -0,0 +1,39 @@
+/*******************************************************************************
+ * Copyright (c) 2007 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.ui;
+
+import org.eclipse.emf.converter.ModelConverter;
+import org.eclipse.emf.importer.rose.ui.RoseImporterWizard;
+import org.eclipse.emf.importer.ui.contribution.base.ModelImporterPackagePage;
+import org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporter;
+
+
+/**
+ */
+public class RoseUMLImporterWizard extends RoseImporterWizard
+{
+ @Override
+ protected ModelConverter createModelConverter()
+ {
+ return new RoseUMLImporter();
+ }
+
+ @Override
+ public void addPages()
+ {
+ RoseUMLDetailPage detailPage = new RoseUMLDetailPage(getModelImporter(), "RoseUMLModel");
+ addPage(detailPage);
+
+ ModelImporterPackagePage packagePage = new ModelImporterPackagePage(getModelImporter(), "RoseUMLPackages");
+ packagePage.setShowReferencedGenModels(true);
+ addPage(packagePage);
+ }
+}
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/tasks/org/eclipse/qvt/declarative/importer/roseuml/taskdefs/RoseUMLGeneratorTask.java b/archive/org.eclipse.qvt.declarative.importer.roseuml/tasks/org/eclipse/qvt/declarative/importer/roseuml/taskdefs/RoseUMLGeneratorTask.java
new file mode 100644
index 000000000..8fa81033b
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/tasks/org/eclipse/qvt/declarative/importer/roseuml/taskdefs/RoseUMLGeneratorTask.java
@@ -0,0 +1,60 @@
+/*******************************************************************************
+ * Copyright (c) 2007 E.D.Willink and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.qvt.declarative.importer.roseuml.taskdefs;
+
+import org.eclipse.emf.importer.rose.taskdefs.RoseGeneratorTask;
+import org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporterApplication;
+
+
+/**
+ * <p>
+ * Generates source code from models specifed in <b>Rose</b> files. Exposes some
+ * functionalities available on the {@link org.eclipse.qvt.declarative.importer.roseuml.RoseUMLImporterApplication}
+ * class - check its <tt>printUsage()</tt> method for detailed information on the arguments
+ * you can use with this task.
+ * </p>
+ * <p>
+ * This task is supposed to be executed by a Eclipse driver with the
+ * <b>org.eclipse.emf.ant</b> plugin. It is neither necessary to use Ant's task
+ * <tt>TaskDef</tt> to declare this task in a script nor to change the Ant's runtime
+ * classpath.
+ * </p>
+ * <p>
+ * The following command line will start a headless Eclipse instance and run the specified
+ * Ant script.
+ * </p>
+ * <p>
+ * java -classpath <i>eclipseDir</i>/startup.jar org.eclipse.core.launcher.Main
+ * -data <i>worspaceDir</i>
+ * -application org.eclipse.ant.core.antRunner
+ * -buildfile <i>antScript</i>
+ * </p>
+ * <p>
+ * Usage example:
+ * </p>
+ * <pre>
+ * &lt;emf.Rose2Java model=&quot;c:/lib/model/lib.mdl&quot;
+ * genModel=&quot;c:/lib/emf/lib.genmodel&quot;
+ * modelProject=&quot;c:/lib&quot;
+ * modelProjectFragmentPath=&quot;src&quot;&gt;
+ * &lt;arg line=&quot;-package library library library.xmi org.examples Library&quot;/&gt;
+ * &lt;arg line=&quot;-pathMap VABASE_PLUGINS_PATH d:/eclipse/plugins&quot/&gt;
+ * &lt;/emf.Rose2Java&gt;
+ * </pre>
+ */
+public class RoseUMLGeneratorTask extends RoseGeneratorTask
+{
+ @Override
+ protected void createGenModel(String[] arguments) throws Exception
+ {
+ new RoseUMLImporterApplication().run(getProgressMonitor(), arguments);
+ }
+} \ No newline at end of file
diff --git a/archive/org.eclipse.qvt.declarative.importer.roseuml/toc.xml b/archive/org.eclipse.qvt.declarative.importer.roseuml/toc.xml
new file mode 100644
index 000000000..85f130f92
--- /dev/null
+++ b/archive/org.eclipse.qvt.declarative.importer.roseuml/toc.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?NLS TYPE="org.eclipse.help.toc"?>
+
+<toc label="(QVT Declarative) Rose UML Importer Guide" topic="html/index.html">
+ <topic label="Administrivia">
+ <topic label="Changes" href="html/changes.html"/>
+ <topic label="Bugs" href="html/bugs.html"/>
+ <topic label="Installation" href="html/installation.html"/>
+ <topic label="License" href="html/epl-v10.html"/>
+ </topic>
+</toc>
diff --git a/archive/psf/.project b/archive/psf/.project
new file mode 100644
index 000000000..69d14084a
--- /dev/null
+++ b/archive/psf/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>qvtd-psf</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/archive/psf/ocl-editor.psf b/archive/psf/ocl-editor.psf
new file mode 100644
index 000000000..9bba09fdd
--- /dev/null
+++ b/archive/psf/ocl-editor.psf
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<psf version="2.0">
+ <provider id="org.eclipse.team.cvs.core.cvsnature">
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,org.eclipse.orbit/net.sourceforge.lpg.lpgjavaruntime,net.sourceforge.lpg.lpgjavaruntime,v1_1"/>
+ <project reference="1.0,:pserver:anonymous@lpg.cvs.sourceforge.net:/cvsroot/lpg,lpg.runtime.java,lpg.runtime.java,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.emf/org.eclipse.emf.validation/plugins/org.eclipse.emf.validation,org.eclipse.emf.validation,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.emf/org.eclipse.emf.transaction/plugins/org.eclipse.emf.transaction,org.eclipse.emf.transaction,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.emf/org.eclipse.emf.transaction/plugins/org.eclipse.emf.transaction.ui,org.eclipse.emf.transaction.ui,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.emf/org.eclipse.emf.transaction/plugins/org.eclipse.emf.workspace,org.eclipse.emf.workspace,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.emf/org.eclipse.emf.transaction/plugins/org.eclipse.emf.workspace.ui,org.eclipse.emf.workspace.ui,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.mdt/org.eclipse.ocl/plugins/org.eclipse.ocl,org.eclipse.ocl,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.mdt/org.eclipse.ocl/plugins/org.eclipse.ocl.edit,org.eclipse.ocl.edit,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.mdt/org.eclipse.ocl/plugins/org.eclipse.ocl.ecore,org.eclipse.ocl.ecore,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.mdt/org.eclipse.ocl/plugins/org.eclipse.ocl.ecore.edit,org.eclipse.ocl.ecore.edit,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.mdt/org.eclipse.ocl/plugins/org.eclipse.ocl.uml,org.eclipse.ocl.uml,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.mdt/org.eclipse.ocl/plugins/org.eclipse.ocl.uml.edit,org.eclipse.ocl.uml.edit,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt,org.eclipse.qvt,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore,org.eclipse.qvt.declarative.ecore,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtbase,org.eclipse.qvt.declarative.ecore.qvtbase,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.imp.runtime,org.eclipse.imp.runtime,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.model,org.eclipse.qvt.declarative.editor.model,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.model.edit,org.eclipse.qvt.declarative.editor.model.edit,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.model.editor,org.eclipse.qvt.declarative.editor.model.editor,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.ocl.ui,org.eclipse.qvt.declarative.editor.ocl.ui,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.ui,org.eclipse.qvt.declarative.editor.ui,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.emof,org.eclipse.qvt.declarative.emof.emof,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.essentialocl,org.eclipse.qvt.declarative.emof.essentialocl,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.examples,org.eclipse.qvt.declarative.examples,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/examples/org.eclipse.qvt.declarative.examples.ocl.empty,org.eclipse.qvt.declarative.examples.ocl.empty,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/examples/org.eclipse.qvt.declarative.examples.ocl.royalandloyal,org.eclipse.qvt.declarative.examples.ocl.royalandloyal,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.modelregistry,org.eclipse.qvt.declarative.modelregistry,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.modelregistry.edit,org.eclipse.qvt.declarative.modelregistry.edit,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.modelregistry.editor,org.eclipse.qvt.declarative.modelregistry.editor,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.modelregistry.ui,org.eclipse.qvt.declarative.modelregistry.ui,"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser,org.eclipse.qvt.declarative.parser,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.ocl,org.eclipse.qvt.declarative.parser.ocl,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.ui,org.eclipse.qvt.declarative.parser.ui,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.unresolved,org.eclipse.qvt.declarative.parser.unresolved,"/>
+ </provider>
+</psf>
diff --git a/archive/releng/ReadMe.txt b/archive/releng/ReadMe.txt
new file mode 100644
index 000000000..468767ab5
--- /dev/null
+++ b/archive/releng/ReadMe.txt
@@ -0,0 +1,11 @@
+Following derived from:
+http://wiki.eclipse.org/MoDisco/Releng/How_to_Use
+http://wiki.eclipse.org/MoDisco/Releng/How_it_Works
+
+
+
+
+
+ssh <commiterid>@build.eclipse.org
+cd /opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-integration/workspace/build/
+cp -r I201007100705 /home/data/httpd/download.eclipse.org/modeling/m2m/qvtd/downloads/drops/0.8.0/
diff --git a/archive/releng/build.properties b/archive/releng/build.properties
new file mode 100644
index 000000000..3d0fce2d0
--- /dev/null
+++ b/archive/releng/build.properties
@@ -0,0 +1,76 @@
+## BEGIN PROJECT BUILD PROPERTIES ##
+
+thirdPartyDownloadLicenseAcceptance="I accept"
+
+projectid=m2m.qvtd
+zipPrefix=m2m-qvtd-incubation
+incubation=-incubation
+version=0.8.0
+buildType=N
+mainFeatureToBuildID=org.eclipse.qvt.declarative
+testFeatureToBuildID=org.eclipse.qvt.declarative.test
+
+build.steps=buildZips,buildTests,buildUpdate,generateDigests,testLocal,publish,cleanup,map2psf
+
+# can be SDK, runtime, or update zips.
+dependencyURLs=http://download.eclipse.org/eclipse/downloads/drops/R-3.6-201006080911/eclipse-SDK-3.6-linux-gtk-ppc.tar.gz
+
+#impURL=http://download.eclipse.org/technology/imp/updates/
+# can also specify repos (local/remote sites or local zips) THEN a list of features to install (see below)
+#repositoryURLs=${impURL}
+repositoryURLs=\
+http://download.eclipse.org/modeling/emf/transaction/downloads/drops/1.4.0/R201006151000/emf-transaction-Update-1.4.0.zip,\
+http://download.eclipse.org/modeling/emf/validation/downloads/drops/1.4.0/R201006151000/emf-validation-Update-1.4.0.zip,\
+http://download.eclipse.org/modeling/mdt/ocl/downloads/drops/3.0.0/R201006141954/mdt-ocl-Update-3.0.0.zip,\
+http://download.eclipse.org/modeling/mdt/uml2/downloads/drops/3.1.0/R201006071241/mdt-uml2-Update-3.1.0.zip,\
+http://download.eclipse.org/modeling/emf/emf/downloads/drops/2.6.0/R201006141136/emf-xsd-Update-2.6.0.zip,\
+http://download.eclipse.org/tools/orbit/downloads/drops/R20100519200754/repository
+featureIDsToInstall=org.eclipse.emf+org.eclipse.xsd+org.eclipse.uml2+org.eclipse.ocl+org.eclipse.ocl.edit+org.eclipse.emf.transaction+org.eclipse.emf.workspace+org.eclipse.emf.validation
+pluginIDsToInstall=org.eclipse.ocl.examples.modelregistry.ui
+
+# multiple installs as a single operation (requires Eclipse 3.5)
+# featureIDsToInstall=org.eclipse.emf+org.eclipse.birt+org.eclipse.cdt
+# install each feature.group in a separate operation (works with Eclipse 3.4)
+#featureIDsToInstall=lpg.runtime.java,org.eclipse.imp.runtime
+#featureIDsToInstall=lpg.runtime,org.eclipse.imp.runtime
+#pluginIDsToInstall=org.eclipse.imp.runtime
+
+compilerArg=-enableJavadoc -encoding UTF-8
+flattenDependencies=true
+parallelCompilation=true
+generateFeatureVersionSuffix=true
+individualSourceBundles=true
+
+JAVA50_HOME=/opt/public/common/ibm-java2-ppc-50
+JAVA14_HOME=/opt/public/common/ibm-java2-142
+JAVA_HOME=${JAVA50_HOME}
+
+#################################################################################################################
+
+#TODO: [269290] make javadokken work.
+#javadocEnabled=true
+#JAVADOC14_HOME=/opt/public/common/ibm-java2-ppc-50/bin
+
+# TODO: are these still required/used?
+#projRelengRoot=:pserver:anonymous@dev.eclipse.org:/cvsroot/tools
+projRelengRoot=:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling
+projRelengPath=org.eclipse.m2m/org.eclipse.qvt.declarative/releng
+basebuilderBranch=R35_RC4
+
+LPGRuntimeVersion = 2.0.17
+domainNamespace=*
+projNamespace=org.eclipse.qvtd
+projRelengName=org.eclipse.qvtd.releng
+
+# TODO: not used yet
+# define regex patterns to use when automatically selecting zips from a directory or list file
+#dependencyRegexFilter=R3_4_maintenance:M200.*/eclipse-SDK-|R-.*200.*/eclipse-SDK-
+
+# TODO: not used yet
+# could be file://, http://, cvs path, or relative path?
+#mapLocation=maps/
+
+# TODO: implement use of packager.map for defining deps?
+# TODO: could be relative, absolute (local), or http/ftp paths to archives when defining dependencyURLs above
+
+## END PROJECT BUILD PROPERTIES ##
diff --git a/archive/releng/build.xml b/archive/releng/build.xml
new file mode 100644
index 000000000..aead412ee
--- /dev/null
+++ b/archive/releng/build.xml
@@ -0,0 +1,73 @@
+<project default="run" name="org.eclipse.qvt.declarative/releng/build.xml - Run a QVTd build using the Athena CBI">
+ <target name="run">
+ <!--
+ 1. You must check out the following projects to your workspace:
+
+ org.eclipse.releng.basebuilder
+ org.eclipse.dash.common.releng
+ org.eclipse.myproject.releng
+
+ 2. You must provide Ant-Contrib in one of four places:
+
+ org.eclipse.dash.common.releng/lib/ant-contrib.jar
+ org.eclipse.myproject.releng/lib/ant-contrib.jar
+ ${thirdPartyJarsDir}/ant-contrib.jar (path can be customized below)
+ /usr/share/java/ant-contrib.jar (may require a symlink)
+
+ You can install Ant-Contrib 1.0b2 via RPM, or download it here:
+
+ http://downloads.sourceforge.net/ant-contrib/ant-contrib-1.0b2-bin.zip
+
+ 3. If your project's sources are in SVN, you must unpack this zip into the basebuilder project's plugins/ folder:
+
+ http://downloads.sourceforge.net/svn-pde-build/org.eclipse.pde.build.svn-1.0.1RC2.zip
+
+ 4. To run automated JUnit tests headlessly, you will require Xvfb or Xvnc; without this,
+ UI tests will be launched into your current OS session (ie., on view port :0) and you may
+ inadvertently interact with them. (Non-UI tests can be run without fear of accidental
+ interaction and do not have this requirement.)
+
+ 5. You must also ensure that the path specified for Java, and the version of Eclipse stated in build.properties
+ are correct for your machine. Edit these properties to suit your needs. Note that JAVA*_HOME variables are for
+ convenience, set in common.releng/server.properties. You can override them in your build.properties, or define
+ different defaults in server.properties, if you intend to run more than one build on this server.
+
+ dependencyURLs=http://download.eclipse.org/eclipse/downloads/drops/S-3.5M5-200902021535/eclipse-SDK-3.5M5-linux-gtk.tar.gz
+ JAVA_HOME=${JAVA14_HOME}
+ -->
+
+ <!-- load properties and set timestamp for the build -->
+ <property file="build.properties" />
+ <tstamp>
+ <format property="buildTimestamp" pattern="yyyyMMddHHmm" />
+ </tstamp>
+
+ <!--
+ to build from HEAD, uncomment these lines
+ <property name="forceContextQualifier" value="v${buildTimestamp}" />
+ <property name="fetchTag" value="HEAD" />
+ -->
+
+ <!-- calculate workspaceDir as parent of this folder, the project's .releng folder (relengBuilderDir) -->
+ <property name="relengBuilderDir" value="${basedir}" />
+ <dirname file="${relengBuilderDir}" property="workspaceDir" />
+
+ <!--
+ can build in /tmp, eg., in /tmp/build, or in workspace, eg.,
+ ${WORKSPACE}/build
+ -->
+ <property name="writableBuildRoot" value="/tmp/build" />
+
+ <!--
+ can be simple path, eg.,
+ ${writableBuildRoot}/${buildType}${buildTimestamp} or longer, eg.,
+ ${writableBuildRoot}/${topprojectName}/${projectName}/downloads/drops/${version}/${buildType}${buildTimestamp} or
+ ${writableBuildRoot}/${topprojectName}/${projectName}/${subprojectName}/downloads/drops/${version}/${buildType}${buildTimestamp}
+ -->
+ <property name="buildDir" value="${writableBuildRoot}/${buildType}${buildTimestamp}" />
+
+ <!-- invoke a new Eclipse process and launch the build from the common.releng folder -->
+ <property name="relengCommonBuilderDir" value="${workspaceDir}/org.eclipse.dash.common.releng" />
+ <ant antfile="${relengCommonBuilderDir}/buildAll.xml" target="runEclipse" dir="${relengCommonBuilderDir}" />
+ </target>
+</project>
diff --git a/archive/releng/buildExtra.xml b/archive/releng/buildExtra.xml
new file mode 100644
index 000000000..aabe71372
--- /dev/null
+++ b/archive/releng/buildExtra.xml
@@ -0,0 +1,144 @@
+<project default="run" name="Project's .releng buildExtra.xml">
+
+ <target name="init">
+ </target>
+
+ <target name="run">
+ <!-- TODO: write code that's hooked into o.e.d.commonbuilder.releng's build.xml to do extra configs (eg., for inserting 3rd party libs into plugins)
+ -->
+ </target>
+
+ <target name="getDependencies">
+ <echo message="getDependencies!!!" />
+ </target>
+
+ <target name="preFetch">
+ <echo message="[[[Not unzipping LPG]]]" />
+ <!--unzip dest="${buildDirectory}/LPG" src="${downloadsDir}/${tools.orbit.file}">
+ <patternset>
+ <include name="**/net.sourceforge.lpg.lpgjavaruntime_${LPGRuntimeVersion}*.jar"/>
+ <include name="**/net.sourceforge.lpg.lpgjavaruntime.source_${LPGRuntimeVersion}*.jar"/>
+ </patternset>
+ </unzip-->
+ <!-- Here is where we fetch all of the example plugins from CVS
+ We don't need them to be packaged into the Master zip, but rather
+ they are needed so that they can be zipped up into the examples
+ plugin as part of the build for that plugin. See the postProcess
+ target below for the other part of this process.-->
+ <ant target="fetchElement" antfile="${eclipse.pdebuild.scripts}/genericTargets.xml">
+ <property name="type" value="plugin"/>
+ <property name="id" value="org.eclipse.qvt.declarative.examples.qvtcore.empty"/>
+ </ant>
+ <ant target="fetchElement" antfile="${eclipse.pdebuild.scripts}/genericTargets.xml">
+ <property name="type" value="plugin"/>
+ <property name="id" value="org.eclipse.qvt.declarative.examples.qvtrelation.empty"/>
+ </ant>
+ <ant target="fetchElement" antfile="${eclipse.pdebuild.scripts}/genericTargets.xml">
+ <property name="type" value="plugin"/>
+ <property name="id" value="org.eclipse.qvt.declarative.examples.qvtrelation.modelmorf"/>
+ </ant>
+ <ant target="fetchElement" antfile="${eclipse.pdebuild.scripts}/genericTargets.xml">
+ <property name="type" value="plugin"/>
+ <property name="id" value="org.eclipse.qvt.declarative.examples.qvtrelation.reltocore"/>
+ </ant>
+ </target>
+
+ <target name="postFetch">
+ <echo message="postFetch!!!" />
+ </target>
+ <target name="preGenerate">
+ <echo message="preGenerate!!!" />
+ </target>
+ <target name="postGenerate">
+ <echo message="postGenerate!!!" />
+ </target>
+ <target name="preAssemble">
+ <echo message="preAssemble!!!" />
+ </target>
+ <target name="postAssemble">
+ <echo message="[[[Not adding the LPG bundles into Master zip]]]" />
+ <!--zip destfile="${buildDirectory}/${buildLabel}/${masterZip}" update="true">
+ <zipfileset dir="${buildDirectory}/LPG"
+ includes="**/net.sourceforge.lpg.lpgjavaruntime*_${LPGRuntimeVersion}.*.jar"
+ />
+ </zip-->
+ </target>
+ <target name="prePackage">
+ <echo message="prePackage!!!" />
+ </target>
+ <target name="postPackage">
+ <echo message="postPackage!!!" />
+ </target>
+ <target name="preProcess">
+ <echo message="preProcess!!!" />
+ </target>
+ <target name="postProcess">
+ <echo message="postProcess!!!" />
+ <!-- We call the special ant task in the example plugin in order to
+ zip up all of the actual examples plugins as zips contained in this
+ plugin. -->
+ <ant dir="${buildDirectory}/plugins/org.eclipse.qvt.declarative.examples" antfile="${buildDirectory}/plugins/org.eclipse.qvt.declarative.examples/buildZips.xml"/>
+ </target>
+ <target name="postBuild">
+ <echo message="postBuild!!!" />
+ </target>
+
+ <target name="extraPackaging">
+ <!-- Add the LPG bundles into SDK zip>
+ <zip destfile="${buildDirectory}/${buildLabel}/${SDKZip}" update="true">
+ <zipfileset dir="${buildDirectory}/LPG"
+ includes="**/net.sourceforge.lpg.lpgjavaruntime*_${LPGRuntimeVersion}.*.jar"
+ />
+ <zipfileset dir="${buildDirectory}"
+ includes="epl-v10.html, notice.html" prefix="eclipse"
+ />
+ </zip-->
+
+ <!-- build runtime from SDK -->
+ <zip destfile="${buildDirectory}/${buildLabel}/${zipPrefix}-runtime${incubation}-${buildAlias}.zip" update="true">
+ <zipfileset src="${buildDirectory}/${buildLabel}/${SDKZip}"
+ dirmode="775"
+ filemode="664"
+ excludes="**/${domainNamespace}.*.examples*, **/${domainNamespace}.*.examples*/**, **/${domainNamespace}.*.samples*, **/${domainNamespace}.*.samples*/**, **/${domainNamespace}.*.sdk*, **/${domainNamespace}.*.sdk*/**, **/${domainNamespace}.*.all*, **/${domainNamespace}.*.all*/**, **/${domainNamespace}.*.doc*, **/${domainNamespace}.*.doc*/**, **/${domainNamespace}.*.source*, **/${domainNamespace}.*.source*/**, **/*src.zip"
+ >
+ <include name="**/${domainNamespace}.qvt*/" />
+ <include name="**/${domainNamespace}.qvt*/**" />
+ <include name="**/net.sourceforge.lpg.lpgjavaruntime_${LPGRuntimeVersion}*" />
+ <include name="**/eclipse/epl-v10.html" />
+ <include name="**/eclipse/notice.html" />
+ </zipfileset>
+ </zip>
+
+ <!-- standalone: extract the jars we need into ./lib/, then the readme into ./, then zip the whole thing and clean up -->
+ <property name="allSDKZipUnpackTemp" value="${buildDirectory}/allSDKZipUnpackTemp" />
+ <mkdir dir="${allSDKZipUnpackTemp}/lib" />
+ <copy todir="${allSDKZipUnpackTemp}/lib" preservelastmodified="true">
+ <zipfileset src="${buildDirectory}/${buildLabel}/${SDKZip}">
+ <patternset>
+ <include name="**/plugins/org.eclipse.qvtd_*.jar" />
+ <!--include name="**/plugins/org.eclipse.ocl.uml_*.jar" />
+ <include name="**/plugins/org.eclipse.ocl_*.jar" />
+ <include name="**/plugins/net.sourceforge.lpg.lpgjavaruntime_*.jar" /-->
+ </patternset>
+ </zipfileset>
+ <mapper type="flatten" />
+ </copy>
+ <copy todir="${allSDKZipUnpackTemp}" preservelastmodified="true">
+ <zipfileset src="${buildDirectory}/${buildLabel}/${SDKZip}">
+ <patternset>
+ <include name="**/eclipse/epl-v10.html" />
+ <include name="**/eclipse/notice.html" />
+ </patternset>
+ </zipfileset>
+ <fileset dir="${relengBuilderDir}/builder/extras">
+ <include name="readme_standalone.html" />
+ </fileset>
+ <mapper type="flatten" />
+ </copy>
+ <zip destfile="${buildDirectory}/${buildLabel}/${zipPrefix}-standalone${incubation}-${buildAlias}.zip" update="true">
+ <fileset dir="${allSDKZipUnpackTemp}" />
+ </zip>
+ <delete dir="${allSDKZipUnpackTemp}" />
+
+ </target>
+</project> \ No newline at end of file
diff --git a/archive/releng/cronjobs b/archive/releng/cronjobs
new file mode 100644
index 000000000..0fe7b4524
--- /dev/null
+++ b/archive/releng/cronjobs
@@ -0,0 +1,11 @@
+# daily N builds
+40 15 * * * /opt/public/common/apache-ant-1.7.1/bin/ant -f
+ /opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/workspace/build/org.eclipse.qvtd.releng/promote.xml
+ -Dpromote.properties=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/workspace/build/org.eclipse.qvtd.releng/promote-N.properties
+ 2>/dev/null 1> ~/promo_logs/cbi-m2m-qvtd-0.8-nightly-promo.txt
+
+# weekly I build
+00 16 * * 2 /opt/public/common/apache-ant-1.7.1/bin/ant -f
+ /opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-integration/workspace/build/org.eclipse.qvtd.releng/promote.xml
+ -Dpromote.properties=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-integration/workspace/build/org.eclipse.qvtd.releng/promote-I.properties
+ 2>/dev/null 1> ~/promo_logs/cbi-m2m-qvtd-0.8-integration-promo.txt
diff --git a/archive/releng/hudson/run.sh b/archive/releng/hudson/run.sh
new file mode 100644
index 000000000..35094445a
--- /dev/null
+++ b/archive/releng/hudson/run.sh
@@ -0,0 +1,98 @@
+#!/bin/bash
+
+# This script runs as https://build.eclipse.org/hudson/job/cbi-*/configure
+# and is archived in http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.dash/athena/org.eclipse.dash.commonbuilder/org.eclipse.dash.commonbuilder.releng/hudson/?root=Technology_Project
+# Build runs under ${WORKSPACE} == /opt/users/hudsonbuild/.hudson/jobs/cbi-*/workspace
+
+echo "[`date +%Y/%m/%d\ %H:%M`] Hudson job ${JOBNAME} build #${BUILD_NUMBER} (${BUILD_ID}) started."
+
+##############################################################################################
+
+# BEGIN CONFIGURATION
+
+buildTimestamp="`date +%Y%m%d%H%M`"
+projectid="mdt.qvtd"
+version="0.8.0"
+
+# leave blank to use assumed values (which may be wrong!)
+projRelengRoot='-projRelengRoot :pserver:anonymous@dev.eclipse.org:/cvsroot/modeling'
+projRelengPath='-projRelengPath org.eclipse.mdt/org.eclipse.qvt.declarative/releng'
+
+# where should we look for pre-checked out project sources for org.eclipse.dash.common.releng and org.eclipse.releng.basebuilder ?
+cvsProjectBaseDir=/opt/public/cbi/build # build.eclipse.org
+if [[ ! -d $cvsProjectBaseDir ]]; then cvsProjectBaseDir=/home/builduser/workspace; fi # local build?
+if [[ ! -d $cvsProjectBaseDir ]]; then
+ echo "ERROR: cannot find where org.eclipse.dash.common.releng and org.eclipse.releng.basebuilder are on disk. Must exit!"
+ exit 1;
+fi
+
+# need a place to store existing 3rd party jars, eg., ant-contrib.jar (if not in /usr/share/java/)
+thirdPartyJarsDir=/opt/public/cbi/build/3rdPartyJars # build.eclipse.org
+if [[ ! -d $thirdPartyJarsDir ]]; then thirdPartyJarsDir=/tmp/build/3rdPartyJars; fi # local build
+if [[ ! -d $thirdPartyJarsDir ]]; then mkdir $thirdPartyJarsDir; fi
+
+# DONE CONFIGURATION
+
+##############################################################################################
+
+# exposed as a Hudson build parameter for convenience
+if [[ $BUILDTYPE ]]; then
+ buildType="$BUILDTYPE"
+else
+ buildType="N"
+fi
+
+# pass in additional flags like -buildAlias=1.0.0RC2 using the $EXTRAFLAGS Hudson parameter
+# buildAlias will rename zips from foo-SDK-N200901011234.zip to foo-SDK-1.0.0RC2.zip
+
+##############################################################################################
+
+# define where to do all the work; start with a fresh folder each time
+writableBuildRoot="${WORKSPACE}/build"
+if [[ -d ${writableBuildRoot} ]]; then rm -fr ${writableBuildRoot}; fi
+
+# define required folders
+downloadsDir="${writableBuildRoot}/downloads"
+signingDir="${writableBuildRoot}/signing"
+
+# long form (default if omitted)
+# buildDir="${writableBuildRoot}/${projectid//.//}/downloads/drops/${version}/${buildType}${buildTimestamp}"
+# short form (non-default)
+buildDir="${writableBuildRoot}/${buildType}${buildTimestamp}"
+
+# create required folders & files (as symlinks is possible)
+mkdir -p ${downloadsDir} ${signingDir} ${buildDir}
+
+# create .cvspass file to shut up unnecessary warnings
+touch ${writableBuildRoot}/.cvspass
+
+#define symlinked required folders
+relengBaseBuilderDir="${writableBuildRoot}/org.eclipse.releng.basebuilder"
+relengCommonBuilderDir="${writableBuildRoot}/org.eclipse.dash.common.releng"
+# symlink basebuilder and common.releng; alternatively, if you omit this, they'll be checked out in start.sh
+echo ln -s ${cvsProjectBaseDir}/org.eclipse.releng.basebuilder ${writableBuildRoot}/
+ln -s ${cvsProjectBaseDir}/org.eclipse.releng.basebuilder ${writableBuildRoot}/
+echo ln -s ${cvsProjectBaseDir}/org.eclipse.dash.common.releng ${writableBuildRoot}/
+ln -s ${cvsProjectBaseDir}/org.eclipse.dash.common.releng ${writableBuildRoot}/
+
+#symlink local copy of org.eclipse.qvt.declarative/releng instead of fetching from CVS (so tweaks for local Hudson are preserved)
+if [[ -d ${cvsProjectBaseDir}/org.eclipse.qvt.declarative/releng ]]; then
+ echo ln -s ${cvsProjectBaseDir}/org.eclipse.qvt.declarative/releng ${writableBuildRoot}/
+ ln -s ${cvsProjectBaseDir}/org.eclipse.qvt.declarative/releng ${writableBuildRoot}/
+fi
+
+# symlink 3rdPartyJars (reuse existing content on build.eclipse.org for ant-contrib.jar, etc.)
+echo ln -s ${thirdPartyJarsDir} ${writableBuildRoot}/
+ln -s ${thirdPartyJarsDir} ${writableBuildRoot}/
+thirdPartyJarsDir="${writableBuildRoot}/3rdPartyJars"
+
+# run a build - may have to pass in "-javaHome /usr/lib/jvm/java" or similar here if default JVM not found
+cd ${writableBuildRoot}/org.eclipse.dash.common.releng/tools/scripts
+./start.sh -projectid ${projectid} -version ${version} -buildType ${buildType} -buildTimestamp ${buildTimestamp} \
+ -writableBuildRoot ${writableBuildRoot} -thirdPartyJarsDir ${thirdPartyJarsDir} -downloadsDir ${downloadsDir} -buildDir ${buildDir} \
+ ${projRelengRoot} ${projRelengPath} ${EXTRAFLAGS} 2>&1
+
+# remove file so workspace navigation is one click simpler
+rm -f ${writableBuildRoot}/.cvspass
+
+echo "[`date +%Y/%m/%d\ %H:%M`] Hudson job ${JOBNAME} build #${BUILD_NUMBER} (${BUILD_ID}) done."
diff --git a/archive/releng/maps/qvtd.map b/archive/releng/maps/qvtd.map
new file mode 100644
index 000000000..d8f5d1349
--- /dev/null
+++ b/archive/releng/maps/qvtd.map
@@ -0,0 +1,92 @@
+!*** M2M QVT Declarative (QVTd) map ********************************************
+
+!*** Special entries from eclipse
+
+plugin@org.eclipse.test=v20091002,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
+fragment@org.eclipse.ant.optional.junit=R3_5_1,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
+
+!*** QVT features ***************************************************************************
+feature@org.eclipse.qvt.declarative=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative-feature
+feature@org.eclipse.qvt.declarative.editor.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor.qvtrelation-feature
+feature@org.eclipse.qvt.declarative.editor.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor.qvtcore-feature
+feature@org.eclipse.qvt.declarative.editor.qvtbase=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor.qvtbase-feature
+feature@org.eclipse.qvt.declarative.editor=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor-feature
+feature@org.eclipse.qvt.declarative.ecore.qvtbase=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.ecore.qvtbase-feature
+feature@org.eclipse.qvt.declarative.ecore.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.ecore.qvtcore-feature
+feature@org.eclipse.qvt.declarative.ecore.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.ecore.qvtrelation-feature
+
+!*** IMP plug-ins ***************************************************************************
+!*** plugin@org.eclipse.imp.runtime=SVN,trunk,svn://dev.eclipse.org/svnroot/technology/org.eclipse.imp,,org.eclipse.imp.runtime
+!*** -- works as HEAD plugin@org.eclipse.imp.runtime=SVN,trunk,svn://dev.eclipse.org/svnroot/technology/org.eclipse.imp,,org.eclipse.imp.runtime
+!*** -- fetches ok but "Invalid manifest header Bundle-Version: "0.1.104.0.1.104.v201003141548" : invalid format" plugin@org.eclipse.imp.runtime=SVN,tags/features/org.eclipse.imp.runtime/0.1.104.v201003141548,svn://dev.eclipse.org/svnroot/technology/org.eclipse.imp,,org.eclipse.imp.runtime
+!*** -- fetch fails plugin@org.eclipse.imp.runtime=v201003141548,tags/features/org.eclipse.imp.runtime/0.1.104,svn://dev.eclipse.org/svnroot/technology/org.eclipse.imp,,org.eclipse.imp.runtime
+!*** -- fetch fails plugin@org.eclipse.imp.runtime=v201003141548,tags/features/org.eclipse.imp.runtime/0.1.104.v201003141548,svn://dev.eclipse.org/svnroot/technology/org.eclipse.imp,,org.eclipse.imp.runtime
+plugin@org.eclipse.imp.runtime=SVN,0.1.106.v201004212015,svn://dev.eclipse.org/svnroot/technology/org.eclipse.imp/tags/features/org.eclipse.imp.runtime,,org.eclipse.imp.runtime
+
+!*** QVT plug-ins ***************************************************************************
+plugin@org.eclipse.qvt=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt
+plugin@org.eclipse.qvt.declarative.ecore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore
+plugin@org.eclipse.qvt.declarative.ecore.qvtbase=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtbase
+plugin@org.eclipse.qvt.declarative.ecore.qvtbase.edit=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtbase.edit
+plugin@org.eclipse.qvt.declarative.ecore.qvtbase.editor=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtbase.editor
+plugin@org.eclipse.qvt.declarative.ecore.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtcore
+plugin@org.eclipse.qvt.declarative.ecore.qvtcore.edit=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtcore.edit
+plugin@org.eclipse.qvt.declarative.ecore.qvtcore.editor=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtcore.editor
+plugin@org.eclipse.qvt.declarative.ecore.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtrelation
+plugin@org.eclipse.qvt.declarative.ecore.qvtrelation.edit=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtrelation.edit
+plugin@org.eclipse.qvt.declarative.ecore.qvtrelation.editor=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvtrelation.editor
+plugin@org.eclipse.qvt.declarative.ecore.qvttemplate=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvttemplate
+plugin@org.eclipse.qvt.declarative.ecore.qvttemplate.edit=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvttemplate.edit
+plugin@org.eclipse.qvt.declarative.ecore.qvttemplate.editor=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.ecore.qvttemplate.editor
+plugin@org.eclipse.qvt.declarative.emof.emof=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.emof
+plugin@org.eclipse.qvt.declarative.emof.qvtbase=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.qvtbase
+plugin@org.eclipse.qvt.declarative.emof.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.qvtcore
+plugin@org.eclipse.qvt.declarative.emof.qvttemplate=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.qvttemplate
+plugin@org.eclipse.qvt.declarative.emof.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.qvtrelation
+plugin@org.eclipse.qvt.declarative.emof.essentialocl=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.emof.essentialocl
+plugin@org.eclipse.qvt.declarative.editor.model=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.model
+plugin@org.eclipse.qvt.declarative.editor.model.edit=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.model.edit
+plugin@org.eclipse.qvt.declarative.editor.model.editor=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.model.editor
+plugin@org.eclipse.qvt.declarative.editor.ui=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.ui
+plugin@org.eclipse.qvt.declarative.editor.ocl.ui=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.ocl.ui
+plugin@org.eclipse.qvt.declarative.editor.qvtcore.ui=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.qvtcore.ui
+plugin@org.eclipse.qvt.declarative.editor.qvtrelation.ui=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.editor.qvtrelation.ui
+plugin@org.eclipse.qvt.declarative.parser=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser
+plugin@org.eclipse.qvt.declarative.parser.ocl=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.ocl
+plugin@org.eclipse.qvt.declarative.parser.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtcore
+plugin@org.eclipse.qvt.declarative.parser.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation
+plugin@org.eclipse.qvt.declarative.parser.ui=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.ui
+plugin@org.eclipse.qvt.declarative.parser.unresolved=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.unresolved
+
+!*** QVT examples ***************************************************************************
+feature@org.eclipse.qvt.declarative.examples=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.examples-feature
+plugin@org.eclipse.qvt.declarative.examples=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.examples
+
+!*** QVT tests ******************************************************************************
+feature@org.eclipse.qvt.declarative.test=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.test-feature
+plugin@org.eclipse.qvt.declarative.test.all=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.all
+plugin@org.eclipse.qvt.declarative.test.emof=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof
+plugin@org.eclipse.qvt.declarative.test.emof.all=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof.all
+plugin@org.eclipse.qvt.declarative.test.emof.emof=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof.emof
+plugin@org.eclipse.qvt.declarative.test.emof.essentialocl=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof.essentialocl
+plugin@org.eclipse.qvt.declarative.test.emof.qvtbase=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof.qvtbase
+plugin@org.eclipse.qvt.declarative.test.emof.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof.qvtcore
+plugin@org.eclipse.qvt.declarative.test.emof.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof.qvtrelation
+plugin@org.eclipse.qvt.declarative.test.emof.qvttemplate=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.emof.qvttemplate
+plugin@org.eclipse.qvt.declarative.test.testqvtbase=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.testqvtbase
+plugin@org.eclipse.qvt.declarative.test.parser=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.parser
+plugin@org.eclipse.qvt.declarative.test.parser.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.parser.qvtcore
+plugin@org.eclipse.qvt.declarative.test.parser.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.parser.qvtrelation
+plugin@org.eclipse.qvt.declarative.test.editor=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.editor
+plugin@org.eclipse.qvt.declarative.test.editor.qvtcore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.editor.qvtcore
+plugin@org.eclipse.qvt.declarative.test.editor.qvtrelation=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tests/org.eclipse.qvt.declarative.test.editor.qvtrelation
+
+!*** QVT Docs ***************************************************************************
+
+
+!*** QVTd Examples plugins
+plugin@org.eclipse.qvt.declarative.examples.qvtcore.empty=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/examples/org.eclipse.qvt.declarative.examples.qvtcore.empty
+!*** plugin@org.eclipse.qvt.declarative.examples.qvtcore.uml2rdbms=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/examples/org.eclipse.qvt.declarative.examples.qvtcore.uml2rdbms
+plugin@org.eclipse.qvt.declarative.examples.qvtrelation.empty=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/examples/org.eclipse.qvt.declarative.examples.qvtrelation.empty
+plugin@org.eclipse.qvt.declarative.examples.qvtrelation.modelmorf=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/examples/org.eclipse.qvt.declarative.examples.qvtrelation.modelmorf
+plugin@org.eclipse.qvt.declarative.examples.qvtrelation.reltocore=v201007100932,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/examples/org.eclipse.qvt.declarative.examples.qvtrelation.reltocore
diff --git a/archive/releng/promote-I.properties b/archive/releng/promote-I.properties
new file mode 100644
index 000000000..fa82f2520
--- /dev/null
+++ b/archive/releng/promote-I.properties
@@ -0,0 +1,19 @@
+#cronjob: /opt/public/common/apache-ant-1.7.1/bin/ant -f /opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-integration/workspace/build/org.eclipse.qvtd.releng/promote.xml -Dpromote.properties=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-integration/workspace/build/org.eclipse.qvtd.releng/promote-N.properties 2>~/promo_logs/cbi-m2m-qvtd-0.8-integration-promo-error.txt 1> ~/promo_logs/cbi-m2m-qvtd-0.8-integration-promo.txt
+
+# source dir
+sourceZipsDir=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-integration/lastSuccessful/archive/build
+
+# target dir
+targetZipsDir=/home/data/httpd/download.eclipse.org/modeling/m2m/qvtd/downloads/drops/0.8.0
+
+# group owner of new files
+targetGroup=m2madmin
+
+# type(s) to copy (N, I, M, S, R; default to all)
+buildTypes=I
+
+# synch method method (add or replace; add = keep adding new builds; replace = keep 1 build per branch)
+synchMethod=replace
+
+# if set, update zip will be unpacked into destination dir and use synchMethod above to add or replace contents
+targetUpdateDir=/home/data/httpd/download.eclipse.org/modeling/m2m/qvtd/0_8/updates/integration/
diff --git a/archive/releng/promote-N.properties b/archive/releng/promote-N.properties
new file mode 100644
index 000000000..5183c235f
--- /dev/null
+++ b/archive/releng/promote-N.properties
@@ -0,0 +1,19 @@
+#cronjob: /opt/public/common/apache-ant-1.7.1/bin/ant -f /opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/workspace/build/org.eclipse.qvtd.releng/promote.xml -Dpromote.properties=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/workspace/build/org.eclipse.qvtd.releng/promote-N.properties 2>~/promo_logs/cbi-m2m-qvtd-0.8-nightly-promo-error.txt 1> ~/promo_logs/cbi-m2m-qvtd-0.8-nightly-promo.txt
+
+# source dir
+sourceZipsDir=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/lastSuccessful/archive/build
+
+# target dir
+targetZipsDir=/home/data/httpd/download.eclipse.org/modeling/m2m/qvtd/downloads/drops/0.8.0
+
+# group owner of new files
+targetGroup=m2madmin
+
+# type(s) to copy (N, I, M, S, R; default to all)
+buildTypes=N
+
+# synch method method (add or replace; add = keep adding new builds; replace = keep 1 build per branch)
+synchMethod=add
+
+# if set, update zip will be unpacked into destination dir and use synchMethod above to add or replace contents
+targetUpdateDir=/home/data/httpd/download.eclipse.org/modeling/m2m/qvtd/0_8/updates/nightly/
diff --git a/archive/releng/promote.properties b/archive/releng/promote.properties
new file mode 100644
index 000000000..e4996beed
--- /dev/null
+++ b/archive/releng/promote.properties
@@ -0,0 +1,19 @@
+#cronjob: /opt/public/common/apache-ant-1.7.1/bin/ant -f /opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/workspace/build/org.eclipse.qvtd.releng/promote.xml -Dpromote.properties=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/workspace/build/org.eclipse.qvtd.releng/promote.properties 2>~/promo_logs/cbi-m2m-qvtd-0.8-nightly-promo-error.txt 1> ~/promo_logs/cbi-m2m-qvtd-0.8-nightly-promo.txt
+
+# source dir
+sourceZipsDir=/opt/users/hudsonbuild/.hudson/jobs/cbi-m2m-qvtd-0.8-nightly/lastSuccessful/archive/build
+
+# target dir
+targetZipsDir=/home/data/httpd/download.eclipse.org/modeling/m2m/qvtd/downloads/drops/0.8.0
+
+# group owner of new files
+targetGroup=m2madmin
+
+# type(s) to copy (N, I, M, S, R; default to all)
+buildTypes=N
+
+# synch method method (add or replace; add = keep adding new builds; replace = keep 1 build per branch)
+synchMethod=add
+
+# if set, update zip will be unpacked into destination dir and use synchMethod above to add or replace contents
+targetUpdateDir=/home/data/httpd/download.eclipse.org/modeling/m2m/qvtd/0_8/updates/nightly/
diff --git a/archive/releng/promote.xml b/archive/releng/promote.xml
new file mode 100644
index 000000000..187484ec7
--- /dev/null
+++ b/archive/releng/promote.xml
@@ -0,0 +1,44 @@
+<project default="run" name="org.eclipse.qvt.declarative/releng/promote.xml - Promote a build from build server to production server">
+ <target name="run">
+ <!--
+ To use this script, you must have configured a promote.properties file.
+
+ Then, run commandline:
+
+ ant -f promote.xml
+
+ If you need to reuse this script with multiple properties files (eg., from
+ multiple Hudson builds across multiple branches), use the commandline
+ flag -Dpromote.properties:
+
+ ant -f promote.xml -Dpromote.properties=promote.properties.R2_0_branch
+ -->
+ <property name="promote.properties" value="promote.properties" />
+ <property file="${promote.properties}"/>
+
+ <!-- load build properties -->
+ <property file="build.properties" />
+
+ <!-- calculate workspaceDir as parent of this folder, the project's .releng folder (relengBuilderDir) -->
+ <property name="relengBuilderDir" value="${basedir}" />
+ <dirname file="${relengBuilderDir}" property="workspaceDir" />
+
+ <!--
+ can build in /tmp, eg., in /tmp/build, or in workspace, eg.,
+ ${relengBuilderDir}/build
+ -->
+ <property name="writableBuildRoot" value="/tmp/build" />
+
+ <!--
+ can be simple path, eg.,
+ ${writableBuildRoot}/${buildType}${buildTimestamp} or longer, eg.,
+ ${writableBuildRoot}/${topprojectName}/${projectName}/downloads/drops/${version}/${buildType}${buildTimestamp} or
+ ${writableBuildRoot}/${topprojectName}/${projectName}/${subprojectName}/downloads/drops/${version}/${buildType}${buildTimestamp}
+ -->
+ <property name="buildDir" value="${writableBuildRoot}/${buildType}${buildTimestamp}-m2m-qvtd" />
+
+ <!-- invoke common promotion script -->
+ <property name="relengCommonBuilderDir" value="${workspaceDir}/org.eclipse.dash.common.releng" />
+ <ant antfile="${relengCommonBuilderDir}/promote.xml" dir="${relengCommonBuilderDir}" />
+ </target>
+</project> \ No newline at end of file
diff --git a/archive/releng/psfs/features.psf b/archive/releng/psfs/features.psf
new file mode 100644
index 000000000..aab817d29
--- /dev/null
+++ b/archive/releng/psfs/features.psf
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<psf version="2.0">
+ <provider id="org.eclipse.team.cvs.core.cvsnature">
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative-feature,org.eclipse.qvt.declarative-feature,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.ecore.qvtbase-feature,org.eclipse.qvt.declarative.ecore.qvtbase-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.ecore.qvtcore-feature,org.eclipse.qvt.declarative.ecore.qvtcore-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.ecore.qvtrelation-feature,org.eclipse.qvt.declarative.ecore.qvtrelation-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor-feature,org.eclipse.qvt.declarative.editor-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor.qvtbase-feature,org.eclipse.qvt.declarative.editor.qvtbase-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor.qvtcore-feature,org.eclipse.qvt.declarative.editor.qvtcore-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.editor.qvtrelation-feature,org.eclipse.qvt.declarative.editor.qvtrelation-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.examples-feature,org.eclipse.qvt.declarative.examples-feature"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/features/org.eclipse.qvt.declarative.test-feature,org.eclipse.qvt.declarative.test-feature"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/releng,org.eclipse.qvtd.releng"/>
+
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/org.eclipse,,www/modeling/m2m/qvtd,org.eclipse.qvtd.www"/>
+ </provider>
+</psf>
diff --git a/archive/releng/psfs/tools.psf b/archive/releng/psfs/tools.psf
new file mode 100644
index 000000000..d35a9356a
--- /dev/null
+++ b/archive/releng/psfs/tools.psf
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<psf version="2.0">
+ <provider id="org.eclipse.team.cvs.core.cvsnature">
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.emf/org.eclipse.emf/plugins/org.eclipse.emf.ant,org.eclipse.emf.ant,"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.emf/org.eclipse.emf/plugins/org.eclipse.emf.importer.rose,org.eclipse.emf.importer.rose"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/modeling,,org.eclipse.m2m/org.eclipse.qvt.declarative/tools/org.eclipse.qvt.declarative.importer.roseuml,org.eclipse.qvt.declarative.importer.roseuml"/>
+ </provider>
+</psf>
diff --git a/archive/releng/testing.properties b/archive/releng/testing.properties
new file mode 100644
index 000000000..98831c2af
--- /dev/null
+++ b/archive/releng/testing.properties
@@ -0,0 +1,10 @@
+#csv list of test plugins to run
+testPluginsToRun=org.eclipse.qvt.declarative.test.all
+#,org.eclipse.qvt.declarative.test.modelregistry
+
+#map name of test plugin to testsuite class to run using ".suite="
+org.eclipse.qvt.declarative.test.all.suite=org.eclipse.qvt.declarative.test.all.AllQVTDeclarativeTests
+#org.eclipse.qvt.declarative.test.modelregistry.suite=org.eclipse.qvt.declarative.test.modelregistry.AllRegistryTests
+
+extraVMargs=-Dorg.eclipse.swt.browser.XULRunnerPath=/shared/common/mozilla-xulrunner181-1.8.1.4-30.ppc
+

Back to the top