catch up with branch daily Signed-off-by: Ralf Mollik <ramollik@compex-commerce.com>
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..328a074 --- /dev/null +++ b/.gitignore
@@ -0,0 +1,35 @@ +**/target/ +**git.properties +**.log.properties +**/target/ +**/.metadata/ + +**/emf-gen/**/.gitignore +**/src-gen/**/.gitignore +**/git.properties +**/*.java._trace +**/*.log +**/*.log.properties + +**/bin/ +**/build/ +*.class +*.ctrl +**/Debug/ +.DS_Store +*.ear +*.war + +**/*.actionbin +**/*.blipbin +**/*.chartbin +**/*.cubebin +**/*.datatypebin +**/*.dtobin +**/*.entitybin +**/*.servicebin +**/*.tablebin +**/*.uibin +**/*.uisemanticbin +**/*.xtendbin +
diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..fc5938d --- /dev/null +++ b/LICENSE.txt
@@ -0,0 +1,140 @@ +Eclipse Foundation Software User Agreement + +November 22, 2017 + +Usage Of Content + +THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION +AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF +THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE +TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED +BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED +BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE +AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE +TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY +APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU +MAY NOT USE THE CONTENT. + +Applicable Licenses + +Unless otherwise indicated, all Content made available by the Eclipse Foundation +is provided to you under the terms and conditions of the Eclipse Public License +Version 2.0 ("EPL"). A copy of the EPL is provided with this Content and is also +available at http://www.eclipse.org/legal/epl-2.0. For purposes of the EPL, +"Program" will mean the Content. + +Content includes, but is not limited to, source code, object code, documentation +and other files maintained in the Eclipse Foundation source code repository +("Repository") in software modules ("Modules") and made available as +downloadable archives ("Downloads"). + +- Content may be structured and packaged into modules to facilitate + delivering, extending, and upgrading the Content. Typical modules may + include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and + features ("Features"). +- Each Plug-in or Fragment may be packaged as a sub-directory or JAR + (Java™ ARchive) in a directory named "plugins". +- A Feature is a bundle of one or more Plug-ins and/or Fragments and + associated material. Each Feature may be packaged as a sub-directory in a + directory named "features". Within a Feature, files named "feature.xml" may + contain a list of the names and version numbers of the Plug-ins and/or + Fragments associated with that Feature. +- Features may also include other Features ("Included Features"). Within a + Feature, files named "feature.xml" may contain a list of the names and + version numbers of Included Features. + +The terms and conditions governing Plug-ins and Fragments should be contained in +files named "about.html" ("Abouts"). The terms and conditions governing Features +and Included Features should be contained in files named "license.html" +("Feature Licenses"). Abouts and Feature Licenses may be located in any +directory of a Download or Module including, but not limited to the following +locations: + +- The top-level (root) directory +- Plug-in and Fragment directories +- Inside Plug-ins and Fragments packaged as JARs +- Sub-directories of the directory named "src" of certain Plug-ins +- Feature directories + +Note: if a Feature made available by the Eclipse Foundation is installed using +the Provisioning Technology (as defined below), you must agree to a license +("Feature Update License") during the installation process. If the Feature +contains Included Features, the Feature Update License should either provide you +with the terms and conditions governing the Included Features or inform you +where you can locate them. Feature Update Licenses may be found in the "license" +property of files named "feature.properties" found within a Feature. Such +Abouts, Feature Licenses, and Feature Update Licenses contain the terms and +conditions (or references to such terms and conditions) that govern your use of +the associated Content in that directory. + +THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL +OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE +OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO): + +- Eclipse Public License Version 1.0 (available at + http://www.eclipse.org/legal/epl-v10.html) +- Eclipse Distribution License Version 1.0 (available at + http://www.eclipse.org/licenses/edl-v1.0.html) +- Common Public License Version 1.0 (available at + http://www.eclipse.org/legal/cpl-v10.html) +- Apache Software License 1.1 (available at + http://www.apache.org/licenses/LICENSE) +- Apache Software License 2.0 (available at + http://www.apache.org/licenses/LICENSE-2.0) +- Mozilla Public License Version 1.1 (available at + http://www.mozilla.org/MPL/MPL-1.1.html) + +IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO +USE OF THE CONTENT. If no About, Feature License, or Feature Update License is +provided, please contact the Eclipse Foundation to determine what terms and +conditions govern that particular Content. + +Use of Provisioning Technology + +The Eclipse Foundation makes available provisioning software, examples of which +include, but are not limited to, p2 and the Eclipse Update Manager +("Provisioning Technology") for the purpose of allowing users to install +software, documentation, information and/or other materials (collectively +"Installable Software"). This capability is provided with the intent of allowing +such users to install, extend and update Eclipse-based products. Information +about packaging Installable Software is available at +http://eclipse.org/equinox/p2/repository_packaging.html ("Specification"). + +You may use Provisioning Technology to allow other parties to install +Installable Software. You shall be responsible for enabling the applicable +license agreements relating to the Installable Software to be presented to, and +accepted by, the users of the Provisioning Technology in accordance with the +Specification. By using Provisioning Technology in such a manner and making it +available in accordance with the Specification, you further acknowledge your +agreement to, and the acquisition of all necessary rights to permit the +following: + +1. A series of actions may occur ("Provisioning Process") in which a user may + execute the Provisioning Technology on a machine ("Target Machine") with the + intent of installing, extending or updating the functionality of an + Eclipse-based product. +2. During the Provisioning Process, the Provisioning Technology may cause third + party Installable Software or a portion thereof to be accessed and copied to + the Target Machine. +3. Pursuant to the Specification, you will provide to the user the terms and + conditions that govern the use of the Installable Software ("Installable + Software Agreement") and such Installable Software Agreement shall be + accessed from the Target Machine in accordance with the Specification. Such + Installable Software Agreement must inform the user of the terms and + conditions that govern the Installable Software and must solicit acceptance + by the end user in the manner prescribed in such Installable + Software Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the + Installable Software. + +Cryptography + +Content may contain encryption software. The country in which you are currently +may have restrictions on the import, possession, and use, and/or re-export to +another country, of encryption software. BEFORE using any encryption software, +please check the country's laws, regulations and policies concerning the import, +possession, or use, and re-export of encryption software, to see if this is +permitted. + +Java and all Java-based trademarks are trademarks of Oracle Corporation in the +United States, other countries, or both.
diff --git a/com.itemis.xtext.codebuff.ui/.classpath b/com.itemis.xtext.codebuff.ui/.classpath new file mode 100644 index 0000000..43b9862 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/.classpath
@@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="target/classes"/> +</classpath>
diff --git a/com.itemis.xtext.codebuff.ui/.project b/com.itemis.xtext.codebuff.ui/.project new file mode 100644 index 0000000..a73b020 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/.project
@@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.osbp.fork.xtext.codebuff.ui</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.babel.editor.rbeBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.babel.editor.rbeNature</nature> + </natures> +</projectDescription>
diff --git a/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.core.resources.prefs b/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/<project>=UTF-8
diff --git a/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.jdt.core.prefs b/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..0c68a61 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.8
diff --git a/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.xtend.core.Xtend.prefs b/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.xtend.core.Xtend.prefs new file mode 100644 index 0000000..5da8aa3 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -0,0 +1,10 @@ +//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=src/test/generated-sources/xtend +BuilderConfiguration.is_project_specific=true +eclipse.preferences.version=1 +outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true +outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false +outlet.DEFAULT_OUTPUT.sourceFolder.emf-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.src-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.src.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.xtend-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.userOutputPerSourceFolder=true
diff --git a/com.itemis.xtext.codebuff.ui/LICENSE.txt b/com.itemis.xtext.codebuff.ui/LICENSE.txt new file mode 100644 index 0000000..fc5938d --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/LICENSE.txt
@@ -0,0 +1,140 @@ +Eclipse Foundation Software User Agreement + +November 22, 2017 + +Usage Of Content + +THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION +AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF +THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE +TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED +BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED +BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE +AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE +TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY +APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU +MAY NOT USE THE CONTENT. + +Applicable Licenses + +Unless otherwise indicated, all Content made available by the Eclipse Foundation +is provided to you under the terms and conditions of the Eclipse Public License +Version 2.0 ("EPL"). A copy of the EPL is provided with this Content and is also +available at http://www.eclipse.org/legal/epl-2.0. For purposes of the EPL, +"Program" will mean the Content. + +Content includes, but is not limited to, source code, object code, documentation +and other files maintained in the Eclipse Foundation source code repository +("Repository") in software modules ("Modules") and made available as +downloadable archives ("Downloads"). + +- Content may be structured and packaged into modules to facilitate + delivering, extending, and upgrading the Content. Typical modules may + include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and + features ("Features"). +- Each Plug-in or Fragment may be packaged as a sub-directory or JAR + (Java™ ARchive) in a directory named "plugins". +- A Feature is a bundle of one or more Plug-ins and/or Fragments and + associated material. Each Feature may be packaged as a sub-directory in a + directory named "features". Within a Feature, files named "feature.xml" may + contain a list of the names and version numbers of the Plug-ins and/or + Fragments associated with that Feature. +- Features may also include other Features ("Included Features"). Within a + Feature, files named "feature.xml" may contain a list of the names and + version numbers of Included Features. + +The terms and conditions governing Plug-ins and Fragments should be contained in +files named "about.html" ("Abouts"). The terms and conditions governing Features +and Included Features should be contained in files named "license.html" +("Feature Licenses"). Abouts and Feature Licenses may be located in any +directory of a Download or Module including, but not limited to the following +locations: + +- The top-level (root) directory +- Plug-in and Fragment directories +- Inside Plug-ins and Fragments packaged as JARs +- Sub-directories of the directory named "src" of certain Plug-ins +- Feature directories + +Note: if a Feature made available by the Eclipse Foundation is installed using +the Provisioning Technology (as defined below), you must agree to a license +("Feature Update License") during the installation process. If the Feature +contains Included Features, the Feature Update License should either provide you +with the terms and conditions governing the Included Features or inform you +where you can locate them. Feature Update Licenses may be found in the "license" +property of files named "feature.properties" found within a Feature. Such +Abouts, Feature Licenses, and Feature Update Licenses contain the terms and +conditions (or references to such terms and conditions) that govern your use of +the associated Content in that directory. + +THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL +OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE +OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO): + +- Eclipse Public License Version 1.0 (available at + http://www.eclipse.org/legal/epl-v10.html) +- Eclipse Distribution License Version 1.0 (available at + http://www.eclipse.org/licenses/edl-v1.0.html) +- Common Public License Version 1.0 (available at + http://www.eclipse.org/legal/cpl-v10.html) +- Apache Software License 1.1 (available at + http://www.apache.org/licenses/LICENSE) +- Apache Software License 2.0 (available at + http://www.apache.org/licenses/LICENSE-2.0) +- Mozilla Public License Version 1.1 (available at + http://www.mozilla.org/MPL/MPL-1.1.html) + +IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO +USE OF THE CONTENT. If no About, Feature License, or Feature Update License is +provided, please contact the Eclipse Foundation to determine what terms and +conditions govern that particular Content. + +Use of Provisioning Technology + +The Eclipse Foundation makes available provisioning software, examples of which +include, but are not limited to, p2 and the Eclipse Update Manager +("Provisioning Technology") for the purpose of allowing users to install +software, documentation, information and/or other materials (collectively +"Installable Software"). This capability is provided with the intent of allowing +such users to install, extend and update Eclipse-based products. Information +about packaging Installable Software is available at +http://eclipse.org/equinox/p2/repository_packaging.html ("Specification"). + +You may use Provisioning Technology to allow other parties to install +Installable Software. You shall be responsible for enabling the applicable +license agreements relating to the Installable Software to be presented to, and +accepted by, the users of the Provisioning Technology in accordance with the +Specification. By using Provisioning Technology in such a manner and making it +available in accordance with the Specification, you further acknowledge your +agreement to, and the acquisition of all necessary rights to permit the +following: + +1. A series of actions may occur ("Provisioning Process") in which a user may + execute the Provisioning Technology on a machine ("Target Machine") with the + intent of installing, extending or updating the functionality of an + Eclipse-based product. +2. During the Provisioning Process, the Provisioning Technology may cause third + party Installable Software or a portion thereof to be accessed and copied to + the Target Machine. +3. Pursuant to the Specification, you will provide to the user the terms and + conditions that govern the use of the Installable Software ("Installable + Software Agreement") and such Installable Software Agreement shall be + accessed from the Target Machine in accordance with the Specification. Such + Installable Software Agreement must inform the user of the terms and + conditions that govern the Installable Software and must solicit acceptance + by the end user in the manner prescribed in such Installable + Software Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the + Installable Software. + +Cryptography + +Content may contain encryption software. The country in which you are currently +may have restrictions on the import, possession, and use, and/or re-export to +another country, of encryption software. BEFORE using any encryption software, +please check the country's laws, regulations and policies concerning the import, +possession, or use, and re-export of encryption software, to see if this is +permitted. + +Java and all Java-based trademarks are trademarks of Oracle Corporation in the +United States, other countries, or both.
diff --git a/com.itemis.xtext.codebuff.ui/META-INF/MANIFEST.MF b/com.itemis.xtext.codebuff.ui/META-INF/MANIFEST.MF new file mode 100644 index 0000000..2e29674 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,10 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: com.itemis.xtext.codebuff.ui +Bundle-SymbolicName: com.itemis.xtext.codebuff.ui +Bundle-Version: 1.0.0.qualifier +Bundle-Vendor: Eclipse OSBP +Automatic-Module-Name: com.itemis.xtext.codebuff.ui +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Require-Bundle: org.eclipse.xtext.ui;bundle-version="2.11.0" +Export-Package: com.itemis.xtext.codebuff.ui
diff --git a/com.itemis.xtext.codebuff.ui/README.txt b/com.itemis.xtext.codebuff.ui/README.txt new file mode 100644 index 0000000..ca63651 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/README.txt
@@ -0,0 +1,16 @@ +Your code for fork.xtext.codebuff goes in here. + +Add all your sources as you usually do for plugin development. + +If you need more bundles to implement the feature, duplicate this folder and ad the new bundle code into the copy + +Do not forget to add your new bundle to the + - feature pom.xml + - feature feature.xml + - and the aggregator pom.xml +as it is done for this bundle. + +Have fun! + + +You can delete this file from the final project. \ No newline at end of file
diff --git a/com.itemis.xtext.codebuff.ui/about.html b/com.itemis.xtext.codebuff.ui/about.html new file mode 100644 index 0000000..e8b834d --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/about.html
@@ -0,0 +1,28 @@ +<!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>November 30, 2017</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 2.0 ("EPL"). A copy of the EPL is available +at <a href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-2.0</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/com.itemis.xtext.codebuff.ui/about.ini b/com.itemis.xtext.codebuff.ui/about.ini new file mode 100644 index 0000000..7df671f --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/about.ini
@@ -0,0 +1,17 @@ +# about.ini +# contains information about a feature +# java.io.Properties file (ISO 8859-1 with "\" escapes) +# "%key" are externalized strings defined in about.properties +# This file does not need to be translated. + +# Property "aboutText" contains blurb for "About" dialog (translated) +aboutText=%featureText + +# Property "featureImage" contains path to feature image (32x32) +featureImage= + +# Property "appName" contains name of the application (translated) +appName=%featureName + +# Property "welcomePage" contains path to welcome page (special XML-based format) +welcomePage=
diff --git a/com.itemis.xtext.codebuff.ui/about.mappings b/com.itemis.xtext.codebuff.ui/about.mappings new file mode 100644 index 0000000..4511a0a --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/about.mappings
@@ -0,0 +1,6 @@ +# about.mappings +# contains fill-ins for about.properties +# java.io.Properties file (ISO 8859-1 with "\" escapes) +# This file does not need to be translated. + +0=qualifier
diff --git a/com.itemis.xtext.codebuff.ui/about.properties b/com.itemis.xtext.codebuff.ui/about.properties new file mode 100644 index 0000000..5c2b0b9 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/about.properties
@@ -0,0 +1,32 @@ +#======================================================================= +# Copyright (c) 2019 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Christophe Loetz (Loetz GmbH&Co.KG) - Initial implementation API and implementation +#======================================================================= + +# NLS_MESSAGEFORMAT_VAR + +featureName=org.eclipse.osbp.fork.xtext.codebuff + +################ blurb property #################################### +featureText=\ +Copyright (c) 2009,2019 itemis AG (http://www.itemis.eu), Loetz GmbH&Co.KG (69115 Heidelberg, Germany) and others.\n\ +All rights reserved. This program and the accompanying materials\n\ +are made available under the terms of the Eclipse Public License 2.0\n\ +which accompanies this distribution, and is available at\n\ +https://www.eclipse.org/legal/epl-2.0/\n\ +\n\ +SPDX-License-Identifier: EPL-2.0\n\ +\n\ +Contributors:\n\ +Holger Schill (itemis AG) - Initial implementation API and implementation\n\ +Loetz GmbH&Co.KG - Adaptions to OSBP project\n\ + +################ end of blurb property ####################################
diff --git a/com.itemis.xtext.codebuff.ui/about_files/README.txt b/com.itemis.xtext.codebuff.ui/about_files/README.txt new file mode 100644 index 0000000..cc50489 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/about_files/README.txt
@@ -0,0 +1 @@ +All external licenses referenced in about file go here \ No newline at end of file
diff --git a/com.itemis.xtext.codebuff.ui/build.properties b/com.itemis.xtext.codebuff.ui/build.properties new file mode 100644 index 0000000..34d2e4d --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/build.properties
@@ -0,0 +1,4 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .
diff --git a/com.itemis.xtext.codebuff.ui/epl-2.0.html b/com.itemis.xtext.codebuff.ui/epl-2.0.html new file mode 100644 index 0000000..637a181 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/epl-2.0.html
@@ -0,0 +1,300 @@ +<!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" xml:lang="en" lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>Eclipse Public License - Version 2.0</title> + <style type="text/css"> + body { + margin: 1.5em 3em; + } + h1{ + font-size:1.5em; + } + h2{ + font-size:1em; + margin-bottom:0.5em; + margin-top:1em; + } + p { + margin-top: 0.5em; + margin-bottom: 0.5em; + } + ul, ol{ + list-style-type:none; + } + </style> + </head> + <body> + <h1>Eclipse Public License - v 2.0</h1> + <p>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. + </p> + <h2 id="definitions">1. DEFINITIONS</h2> + <p>“Contribution” means:</p> + <ul> + <li>a) in the case of the initial Contributor, the initial content + Distributed under this Agreement, and + </li> + <li> + b) in the case of each subsequent Contributor: + <ul> + <li>i) changes to the Program, and</li> + <li>ii) additions to the Program;</li> + </ul> + 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 changes or additions to the Program that + are not Modified Works. + </li> + </ul> + <p>“Contributor” means any person or entity that Distributes the Program.</p> + <p>“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. + </p> + <p>“Program” means the Contributions Distributed in accordance with this + Agreement. + </p> + <p>“Recipient” means anyone who receives the Program under this Agreement + or any Secondary License (as applicable), including Contributors. + </p> + <p>“Derivative Works” shall mean any work, whether in Source Code or other + form, that is based on (or derived from) the Program and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. + </p> + <p>“Modified Works” shall mean any work in Source Code or other form that + results from an addition to, deletion from, or modification of the + contents of the Program, including, for purposes of clarity any new file + in Source Code form that contains any contents of the Program. Modified + Works shall not include works that contain only declarations, interfaces, + types, classes, structures, or files of the Program solely in each case + in order to link to, bind by name, or subclass the Program or Modified + Works thereof. + </p> + <p>“Distribute” means the acts of a) distributing or b) making available + in any manner that enables the transfer of a copy. + </p> + <p>“Source Code” means the form of a Program preferred for making + modifications, including but not limited to software source code, + documentation source, and configuration files. + </p> + <p>“Secondary License” means either the GNU General Public License, + Version 2.0, or any later versions of that license, including any + exceptions or additional permissions as identified by the initial + Contributor. + </p> + <h2 id="grant-of-rights">2. GRANT OF RIGHTS</h2> + <ul> + <li>a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free copyright + license to reproduce, prepare Derivative Works of, publicly display, + publicly perform, Distribute and sublicense the Contribution of such + Contributor, if any, and such Derivative Works. + </li> + <li>b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, 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 or other 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. + </li> + <li>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. + </li> + <li>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. + </li> + <li>e) Notwithstanding the terms of any Secondary License, no Contributor + makes additional grants to any Recipient (other than those set forth + in this Agreement) as a result of such Recipient's receipt of the + Program under the terms of a Secondary License (if permitted under + the terms of Section 3). + </li> + </ul> + <h2 id="requirements">3. REQUIREMENTS</h2> + <p>3.1 If a Contributor Distributes the Program in any form, then:</p> + <ul> + <li>a) the Program must also be made available as Source Code, in + accordance with section 3.2, and the Contributor must accompany + the Program with a statement that the Source Code for the Program + is available under this Agreement, and informs Recipients how to + obtain it in a reasonable manner on or through a medium customarily + used for software exchange; and + </li> + <li> + b) the Contributor may Distribute the Program under a license + different than this Agreement, provided that such license: + <ul> + <li>i) effectively disclaims on behalf of all other 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; + </li> + <li>ii) effectively excludes on behalf of all other Contributors all + liability for damages, including direct, indirect, special, incidental + and consequential damages, such as lost profits; + </li> + <li>iii) does not attempt to limit or alter the recipients' rights in the + Source Code under section 3.2; and + </li> + <li>iv) requires any subsequent distribution of the Program by any party + to be under a license that satisfies the requirements of this section 3. + </li> + </ul> + </li> + </ul> + <p>3.2 When the Program is Distributed as Source Code:</p> + <ul> + <li>a) it must be made available under this Agreement, or if the Program (i) + is combined with other material in a separate file or files made available + under a Secondary License, and (ii) the initial Contributor attached to + the Source Code the notice described in Exhibit A of this Agreement, + then the Program may be made available under the terms of such + Secondary Licenses, and + </li> + <li>b) a copy of this Agreement must be included with each copy of the Program.</li> + </ul> + <p>3.3 Contributors may not remove or alter any copyright, patent, trademark, + attribution notices, disclaimers of warranty, or limitations of liability + (‘notices’) contained within the Program from any copy of the Program which + they Distribute, provided that Contributors may add their own appropriate + notices. + </p> + <h2 id="commercial-distribution">4. COMMERCIAL DISTRIBUTION</h2> + <p>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. + </p> + <p>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. + </p> + <h2 id="warranty">5. NO WARRANTY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="disclaimer">6. DISCLAIMER OF LIABILITY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="general">7. GENERAL</h2> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. Nothing in this Agreement is intended + to be enforceable by any entity that is not a Contributor or Recipient. + No third-party beneficiary rights are created under this Agreement. + </p> + <h2 id="exhibit-a">Exhibit A – Form of Secondary Licenses Notice</h2> + <p>“This Source Code may also be made available under the following + Secondary Licenses when the conditions for such availability set forth + in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), + version(s), and exceptions or additional permissions here}.” + </p> + <blockquote> + <p>Simply including a copy of this Agreement, including this Exhibit A + is not sufficient to license the Source Code under Secondary Licenses. + </p> + <p>If it is not possible or desirable to put the notice in a particular file, + then You may include the notice in a location (such as a LICENSE file in a + relevant directory) where a recipient would be likely to look for + such a notice. + </p> + <p>You may add additional accurate notices of copyright ownership.</p> + </blockquote> + </body> +</html> \ No newline at end of file
diff --git a/com.itemis.xtext.codebuff.ui/license.html b/com.itemis.xtext.codebuff.ui/license.html new file mode 100644 index 0000000..008b801 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/license.html
@@ -0,0 +1,189 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<!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>Eclipse Foundation Software User Agreement</title> +</head> + +<body lang="EN-US"> + <h2>Eclipse Foundation Software User Agreement</h2> + <p>November 22, 2017</p> + + <h3>Usage Of Content</h3> + + <p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, + INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS + (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY + THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND + CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS + GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY + APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS + AGREEMENT AND THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE + AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT + USE THE CONTENT.</p> + + <h3>Applicable Licenses</h3> + + <p> + Unless otherwise indicated, all Content made available by the Eclipse + Foundation is provided to you under the terms and conditions of the + Eclipse Public License Version 2.0 ("EPL"). A copy of the + EPL is provided with this Content and is also available at <a + href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>. + For purposes of the EPL, "Program" will mean the Content. + </p> + + <p>Content includes, but is not limited to, source code, object + code, documentation and other files maintained in the Eclipse + Foundation source code repository ("Repository") in software + modules ("Modules") and made available as downloadable + archives ("Downloads").</p> + + <ul> + <li>Content may be structured and packaged into modules to + facilitate delivering, extending, and upgrading the Content. Typical + modules may include plug-ins ("Plug-ins"), plug-in + fragments ("Fragments"), and features + ("Features").</li> + <li>Each Plug-in or Fragment may be packaged as a sub-directory + or JAR (Java™ ARchive) in a directory named + "plugins".</li> + <li>A Feature is a bundle of one or more Plug-ins and/or + Fragments and associated material. Each Feature may be packaged as a + sub-directory in a directory named "features". Within a + Feature, files named "feature.xml" may contain a list of + the names and version numbers of the Plug-ins and/or Fragments + associated with that Feature.</li> + <li>Features may also include other Features ("Included + Features"). Within a Feature, files named + "feature.xml" may contain a list of the names and version + numbers of Included Features.</li> + </ul> + + <p>The terms and conditions governing Plug-ins and Fragments should + be contained in files named "about.html" + ("Abouts"). The terms and conditions governing Features and + Included Features should be contained in files named + "license.html" ("Feature Licenses"). Abouts and + Feature Licenses may be located in any directory of a Download or + Module including, but not limited to the following locations:</p> + + <ul> + <li>The top-level (root) directory</li> + <li>Plug-in and Fragment directories</li> + <li>Inside Plug-ins and Fragments packaged as JARs</li> + <li>Sub-directories of the directory named "src" of + certain Plug-ins</li> + <li>Feature directories</li> + </ul> + + <p>Note: if a Feature made available by the Eclipse Foundation is + installed using the Provisioning Technology (as defined below), you + must agree to a license ("Feature Update License") during + the installation process. If the Feature contains Included Features, + the Feature Update License should either provide you with the terms + and conditions governing the Included Features or inform you where you + can locate them. Feature Update Licenses may be found in the + "license" property of files named + "feature.properties" found within a Feature. Such Abouts, + Feature Licenses, and Feature Update Licenses contain the terms and + conditions (or references to such terms and conditions) that govern + your use of the associated Content in that directory.</p> + + <p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY + REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND + CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT + ARE NOT LIMITED TO):</p> + + <ul> + <li>Eclipse Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>) + </li> + <li>Eclipse Distribution License Version 1.0 (available at <a + href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>) + </li> + <li>Common Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>) + </li> + <li>Apache Software License 1.1 (available at <a + href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>) + </li> + <li>Apache Software License 2.0 (available at <a + href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>) + </li> + <li>Mozilla Public License Version 1.1 (available at <a + href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>) + </li> + </ul> + + <p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND + CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, + or Feature Update License is provided, please contact the Eclipse + Foundation to determine what terms and conditions govern that + particular Content.</p> + + + <h3>Use of Provisioning Technology</h3> + + <p> + The Eclipse Foundation makes available provisioning software, examples + of which include, but are not limited to, p2 and the Eclipse Update + Manager ("Provisioning Technology") for the purpose of + allowing users to install software, documentation, information and/or + other materials (collectively "Installable Software"). This + capability is provided with the intent of allowing such users to + install, extend and update Eclipse-based products. Information about + packaging Installable Software is available at <a + href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a> + ("Specification"). + </p> + + <p>You may use Provisioning Technology to allow other parties to + install Installable Software. You shall be responsible for enabling + the applicable license agreements relating to the Installable Software + to be presented to, and accepted by, the users of the Provisioning + Technology in accordance with the Specification. By using Provisioning + Technology in such a manner and making it available in accordance with + the Specification, you further acknowledge your agreement to, and the + acquisition of all necessary rights to permit the following:</p> + + <ol> + <li>A series of actions may occur ("Provisioning + Process") in which a user may execute the Provisioning + Technology on a machine ("Target Machine") with the intent + of installing, extending or updating the functionality of an + Eclipse-based product.</li> + <li>During the Provisioning Process, the Provisioning Technology + may cause third party Installable Software or a portion thereof to be + accessed and copied to the Target Machine.</li> + <li>Pursuant to the Specification, you will provide to the user + the terms and conditions that govern the use of the Installable + Software ("Installable Software Agreement") and such + Installable Software Agreement shall be accessed from the Target + Machine in accordance with the Specification. Such Installable + Software Agreement must inform the user of the terms and conditions + that govern the Installable Software and must solicit acceptance by + the end user in the manner prescribed in such Installable Software + Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the Installable + Software.</li> + </ol> + + <h3>Cryptography</h3> + + <p>Content may contain encryption software. The country in which + you are currently may have restrictions on the import, possession, and + use, and/or re-export to another country, of encryption software. + BEFORE using any encryption software, please check the country's laws, + regulations and policies concerning the import, possession, or use, + and re-export of encryption software, to see if this is permitted.</p> + + <p> + <small>Java and all Java-based trademarks are trademarks of + Oracle Corporation in the United States, other countries, or both.</small> + </p> +</body> +</html>
diff --git a/com.itemis.xtext.codebuff.ui/pom.xml b/com.itemis.xtext.codebuff.ui/pom.xml new file mode 100644 index 0000000..e9a13c7 --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/pom.xml
@@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +#======================================================================= +# Copyright (c) 2019 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Christophe Loetz (Loetz GmbH&Co.KG) - Initial implementation API and implementation +#======================================================================= +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.eclipse.osbp.fork.xtext.codebuff</groupId> + <artifactId>org.eclipse.osbp.fork.xtext.codebuff.aggregator</artifactId> + <version>0.9.0-SNAPSHOT</version> + <relativePath>..</relativePath> + </parent> + <version>1.0.0-SNAPSHOT</version> + + <artifactId>com.itemis.xtext.codebuff.ui</artifactId> + <packaging>eclipse-plugin</packaging> + + <build> + <sourceDirectory>src</sourceDirectory> + </build> + + </project>
diff --git a/com.itemis.xtext.codebuff.ui/src/com/itemis/xtext/codebuff/ui/CodebuffContentFormatter.java b/com.itemis.xtext.codebuff.ui/src/com/itemis/xtext/codebuff/ui/CodebuffContentFormatter.java new file mode 100644 index 0000000..58a86ce --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/src/com/itemis/xtext/codebuff/ui/CodebuffContentFormatter.java
@@ -0,0 +1,160 @@ +/******************************************************************************* + * Copyright (c) 2017 TypeFox GmbH (http://www.typefox.io) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff.ui; + +import java.io.File; +import java.lang.reflect.Constructor; +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import java.net.URL; +import java.net.URLClassLoader; +import java.util.List; + +import org.eclipse.core.resources.IProject; +import org.eclipse.core.resources.IWorkspaceRoot; +import org.eclipse.core.resources.ResourcesPlugin; +import org.eclipse.core.runtime.IPath; +import org.eclipse.core.runtime.Path; +import org.eclipse.core.runtime.Platform; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.common.util.WrappedException; +import org.eclipse.jface.text.IDocument; +import org.eclipse.jface.text.IRegion; +import org.eclipse.jface.text.formatter.IContentFormatter; +import org.eclipse.jface.text.formatter.IFormattingStrategy; +import org.eclipse.xtext.Constants; +import org.eclipse.xtext.formatting.impl.DefaultNodeModelFormatter; +import org.eclipse.xtext.ui.editor.model.XtextDocument; +import org.osgi.framework.Bundle; + +import com.google.inject.Inject; +import com.google.inject.name.Named; + +/** + * @author Holger Schill - Initial contribution and API + */ +public class CodebuffContentFormatter implements IContentFormatter { + // Classes to use + private static final String CODEBUFF_TRAINER = "org.antlr.codebuff.Trainer"; + private static final String INPUT_DOCUMENT = "org.antlr.codebuff.InputDocument"; + private static final String FEATURE_META_DATA = "org.antlr.codebuff.FeatureMetaData"; + private static final String LANG_DESCRIPTOR = "org.antlr.codebuff.misc.LangDescriptor"; + private static final String CODEBUFFPARSER = "org.antlr.codebuff.CodebuffParser"; + private static final String CODEBUFFLEXER = "org.antlr.codebuff.CodebuffLexer"; + private static final String FORMATTER = "org.antlr.codebuff.Formatter"; + private static final String CORPUS = "org.antlr.codebuff.Corpus"; + private static final String TOOLCLASS = "org.antlr.codebuff.Tool"; + + // Folders and libs + private static final String CORPUSDIR = "corpus"; + private static final String ANTLR4GEN = "antlr4gen"; + private static final String TARGETFOLDER = ANTLR4GEN + "/target/"; + private static final String CODEBUFF = "codebuff-1.5.1.jar"; + + private IContentFormatter defaultFormatter; + + @Inject + @Named(Constants.LANGUAGE_NAME) + String languageName; + + @Inject + @Named(Constants.FILE_EXTENSIONS) + String fileExtension; + + @Inject + @Named("COMMENTRULE") + String commentRule; + + @Inject + @Named("INDENT") + int indent; + + public void setDefaultFormatter(IContentFormatter defaultFormatter) { + this.defaultFormatter = defaultFormatter; + } + + @Override + public void format(IDocument document, IRegion region) { + ClassLoader loader = initializeLoader(); + XtextDocument xtextDoc = (XtextDocument) document; + try { + Class<?> lanDescClass = loader.loadClass(LANG_DESCRIPTOR); + Constructor<?> langDescConstructor = lanDescClass.getConstructor(String.class, String.class, String.class, Class.class, + Class.class, String.class, int.class, int.class); + String fileRegex = ".*\\." + fileExtension + ".sample"; + Class<?> tool = loader.loadClass(TOOLCLASS); + Method getFileNames = tool.getDeclaredMethod("getFilenames", File.class, String.class); + URI resourceURI = xtextDoc.getResourceURI(); + URI projectURI = resourceURI.trimSegments(resourceURI.segmentCount() - 2); + IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot(); + IProject project = root.getProject(projectURI.segment(1)); + String projectPath = project.getLocationURI().getPath(); + IPath file = root.getFile(new Path(resourceURI.toPlatformString(true))).getLocation(); + String corpusDirString = projectPath + "/" + CORPUSDIR; + File corpusDirFile = new File(corpusDirString); + Class<?> parser = loader.loadClass(CODEBUFFPARSER); + Class<?> lexer = loader.loadClass(CODEBUFFLEXER); + Field commentField = lexer.getDeclaredField(commentRule); + int commentRuleValue = commentField.getInt(null); + Field ruleNamesField = parser.getDeclaredField("ruleNames"); + String[] ruleNames = (String[]) ruleNamesField.get(null); + String rootRule = ruleNames[0]; + Object lanDesc = langDescConstructor.newInstance("XtextGEN", corpusDirString, fileRegex, lexer, parser, rootRule, indent, + commentRuleValue); + if (corpusDirFile.exists()) { + Object allFiles = getFileNames.invoke(null, corpusDirFile, fileRegex); + Method load = tool.getDeclaredMethod("load", List.class, lanDescClass); + Object documents = load.invoke(null, allFiles, lanDesc); + Method parse = tool.getDeclaredMethod("parse", String.class, lanDescClass); + Object testDoc = parse.invoke(null, file.toOSString(), lanDesc); + Class<?> corpusClass = loader.loadClass(CORPUS); + Constructor<?> corpusConstructor = corpusClass.getConstructor(List.class, lanDescClass); + Object corpus = corpusConstructor.newInstance(documents, lanDesc); + Method train = corpusClass.getDeclaredMethod("train"); + train.invoke(corpus); + Class<?> formatterClass = loader.loadClass(FORMATTER); + Class<?> featureMetaDataClass = loader.loadClass(FEATURE_META_DATA); + Object array = java.lang.reflect.Array.newInstance(featureMetaDataClass, 0); + Constructor<?> formatterConstructor = formatterClass.getConstructor(corpusClass, int.class, int.class, array.getClass(), + array.getClass()); + Field default_k = formatterClass.getDeclaredField("DEFAULT_K"); + Class<?> trainer = loader.loadClass(CODEBUFF_TRAINER); + Field features_inject_ws = trainer.getDeclaredField("FEATURES_INJECT_WS"); + Field features_hpos = trainer.getDeclaredField("FEATURES_HPOS"); + Object formatter = formatterConstructor.newInstance(corpus, indent, default_k.get(null), features_inject_ws.get(null), + features_hpos.get(null)); + Class<?> inputDocClass = loader.loadClass(INPUT_DOCUMENT); + Method format = formatterClass.getDeclaredMethod("format", inputDocClass, boolean.class); + String result = (String) format.invoke(formatter, testDoc, false); + document.set(result); + } else if(defaultFormatter != null) { + defaultFormatter.format(document, region); + } + } catch (Exception e) { + throw new WrappedException(e); + } + } + + protected ClassLoader initializeLoader() { + try { + Bundle bundle = Platform.getBundle(languageName.substring(0, languageName.lastIndexOf("."))); + URL targetFolder = bundle.getEntry(TARGETFOLDER); + URL codebuff = bundle.getEntry(CODEBUFF); + + return new URLClassLoader(new URL[] { codebuff, targetFolder }, null); + } catch (Exception e) { + throw new WrappedException(e); + } + } + + @Override + public IFormattingStrategy getFormattingStrategy(String contentType) { + return null; + } + +}
diff --git a/com.itemis.xtext.codebuff.ui/src/com/itemis/xtext/codebuff/ui/CodebuffContentFormatterFactory.java b/com.itemis.xtext.codebuff.ui/src/com/itemis/xtext/codebuff/ui/CodebuffContentFormatterFactory.java new file mode 100644 index 0000000..ca638ae --- /dev/null +++ b/com.itemis.xtext.codebuff.ui/src/com/itemis/xtext/codebuff/ui/CodebuffContentFormatterFactory.java
@@ -0,0 +1,117 @@ +/******************************************************************************* + * Copyright (c) 2017 TypeFox GmbH (http://www.typefox.io) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff.ui; + +import org.eclipse.jface.text.formatter.IContentFormatter; +import org.eclipse.jface.text.source.ISourceViewer; +import org.eclipse.jface.text.source.SourceViewerConfiguration; +import org.eclipse.xtext.ui.editor.formatting.IContentFormatterFactory; +import org.eclipse.jface.text.BadLocationException; +import org.eclipse.jface.text.IDocument; +import org.eclipse.jface.text.IRegion; +import org.eclipse.jface.text.formatter.IFormattingStrategy; +import org.eclipse.text.edits.ReplaceEdit; +import org.eclipse.text.edits.TextEdit; +import org.eclipse.xtext.formatting.INodeModelFormatter; +import org.eclipse.xtext.formatting.INodeModelFormatter.IFormattedRegion; +import org.eclipse.xtext.parser.IParseResult; +import org.eclipse.xtext.resource.XtextResource; +import org.eclipse.xtext.ui.editor.model.IXtextDocument; +import org.eclipse.xtext.ui.editor.reconciler.ReplaceRegion; +import org.eclipse.xtext.util.concurrent.IUnitOfWork; + +import com.google.inject.Inject; + +/** + * @author Holger Schill - Initial contribution and API + */ +public class CodebuffContentFormatterFactory implements IContentFormatterFactory { + + @Inject protected CodebuffContentFormatter codebuffFormatter; + + @Inject protected INodeModelFormatter formatter; + + @Override + public IContentFormatter createConfiguredFormatter(SourceViewerConfiguration configuration, ISourceViewer sourceViewer) { + codebuffFormatter.setDefaultFormatter(new ContentFormatter()); + return codebuffFormatter; + } + + public class ContentFormatter implements IContentFormatter { + @Override + public void format(IDocument document, IRegion region) { + IXtextDocument doc = (IXtextDocument) document; + ReplaceRegion r = doc.priorityReadOnly(new FormattingUnitOfWork(region)); + try { + if (r != null) { + TextEdit edit = createTextEdit(doc, r); + if (edit != null) { + edit.apply(doc); + } + + } + } catch (BadLocationException e) { + throw new RuntimeException(e); + } + } + + @Override + public IFormattingStrategy getFormattingStrategy(String contentType) { + return null; + } + } + + /** + * TODO: Use a {@link org.eclipse.xtext.util.ReplaceRegion} instead of the {@link ReplaceRegion}. + */ + public class FormattingUnitOfWork implements + IUnitOfWork<ReplaceRegion, XtextResource> { + + protected final IRegion region; + + public FormattingUnitOfWork(IRegion region) { + super(); + this.region = region; + } + + @Override + public ReplaceRegion exec(XtextResource state) throws Exception { + IParseResult parseResult = state.getParseResult(); + if (parseResult == null) + return null; + IFormattedRegion r = formatter.format(parseResult.getRootNode(), region.getOffset(), region.getLength()); + return new ReplaceRegion(r.getOffset(), r.getLength(), r.getFormattedText()); + } + } + + /** + * Create a text edit from the given replace region. + * The default impl will strip the common leading and trailing parts of the replaced region and the replacement text. + * + * @since 2.8 + */ + protected TextEdit createTextEdit(IXtextDocument doc, ReplaceRegion r) throws BadLocationException { + String originalText = doc.get(r.getOffset(), r.getLength()); + String newText = r.getText(); + int start = 0; + int originalEnd = originalText.length() - 1; + int newEnd = newText.length() - 1; + int minLen = Math.min(r.getLength(), newText.length()); + while(start < minLen && originalText.charAt(start) == newText.charAt(start)) { + start++; + } + while (originalEnd >= start + && newEnd >= start + && originalText.charAt(originalEnd) == newText.charAt(newEnd)) { + originalEnd--; + newEnd--; + } + return new ReplaceEdit(r.getOffset() + start, originalEnd - start + 1, r.getText().substring(start, newEnd + 1)); + } + +}
diff --git a/com.itemis.xtext.codebuff/.classpath b/com.itemis.xtext.codebuff/.classpath new file mode 100644 index 0000000..873bf67 --- /dev/null +++ b/com.itemis.xtext.codebuff/.classpath
@@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src/"/> + <classpathentry kind="src" path="xtend-gen"/> + <classpathentry kind="output" path="target/classes"/> +</classpath>
diff --git a/com.itemis.xtext.codebuff/.project b/com.itemis.xtext.codebuff/.project new file mode 100644 index 0000000..abf2973 --- /dev/null +++ b/com.itemis.xtext.codebuff/.project
@@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.osbp.fork.xtext.codebuff</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + <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> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.babel.editor.rbeBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.babel.editor.rbeNature</nature> + </natures> +</projectDescription>
diff --git a/com.itemis.xtext.codebuff/.settings/org.eclipse.core.resources.prefs b/com.itemis.xtext.codebuff/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/com.itemis.xtext.codebuff/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/<project>=UTF-8
diff --git a/com.itemis.xtext.codebuff/.settings/org.eclipse.jdt.core.prefs b/com.itemis.xtext.codebuff/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..0c68a61 --- /dev/null +++ b/com.itemis.xtext.codebuff/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.8
diff --git a/com.itemis.xtext.codebuff/.settings/org.eclipse.xtend.core.Xtend.prefs b/com.itemis.xtext.codebuff/.settings/org.eclipse.xtend.core.Xtend.prefs new file mode 100644 index 0000000..5da8aa3 --- /dev/null +++ b/com.itemis.xtext.codebuff/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -0,0 +1,10 @@ +//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=src/test/generated-sources/xtend +BuilderConfiguration.is_project_specific=true +eclipse.preferences.version=1 +outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true +outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false +outlet.DEFAULT_OUTPUT.sourceFolder.emf-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.src-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.src.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.xtend-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.userOutputPerSourceFolder=true
diff --git a/com.itemis.xtext.codebuff/LICENSE.txt b/com.itemis.xtext.codebuff/LICENSE.txt new file mode 100644 index 0000000..fc5938d --- /dev/null +++ b/com.itemis.xtext.codebuff/LICENSE.txt
@@ -0,0 +1,140 @@ +Eclipse Foundation Software User Agreement + +November 22, 2017 + +Usage Of Content + +THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION +AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF +THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE +TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED +BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED +BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE +AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE +TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY +APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU +MAY NOT USE THE CONTENT. + +Applicable Licenses + +Unless otherwise indicated, all Content made available by the Eclipse Foundation +is provided to you under the terms and conditions of the Eclipse Public License +Version 2.0 ("EPL"). A copy of the EPL is provided with this Content and is also +available at http://www.eclipse.org/legal/epl-2.0. For purposes of the EPL, +"Program" will mean the Content. + +Content includes, but is not limited to, source code, object code, documentation +and other files maintained in the Eclipse Foundation source code repository +("Repository") in software modules ("Modules") and made available as +downloadable archives ("Downloads"). + +- Content may be structured and packaged into modules to facilitate + delivering, extending, and upgrading the Content. Typical modules may + include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and + features ("Features"). +- Each Plug-in or Fragment may be packaged as a sub-directory or JAR + (Java™ ARchive) in a directory named "plugins". +- A Feature is a bundle of one or more Plug-ins and/or Fragments and + associated material. Each Feature may be packaged as a sub-directory in a + directory named "features". Within a Feature, files named "feature.xml" may + contain a list of the names and version numbers of the Plug-ins and/or + Fragments associated with that Feature. +- Features may also include other Features ("Included Features"). Within a + Feature, files named "feature.xml" may contain a list of the names and + version numbers of Included Features. + +The terms and conditions governing Plug-ins and Fragments should be contained in +files named "about.html" ("Abouts"). The terms and conditions governing Features +and Included Features should be contained in files named "license.html" +("Feature Licenses"). Abouts and Feature Licenses may be located in any +directory of a Download or Module including, but not limited to the following +locations: + +- The top-level (root) directory +- Plug-in and Fragment directories +- Inside Plug-ins and Fragments packaged as JARs +- Sub-directories of the directory named "src" of certain Plug-ins +- Feature directories + +Note: if a Feature made available by the Eclipse Foundation is installed using +the Provisioning Technology (as defined below), you must agree to a license +("Feature Update License") during the installation process. If the Feature +contains Included Features, the Feature Update License should either provide you +with the terms and conditions governing the Included Features or inform you +where you can locate them. Feature Update Licenses may be found in the "license" +property of files named "feature.properties" found within a Feature. Such +Abouts, Feature Licenses, and Feature Update Licenses contain the terms and +conditions (or references to such terms and conditions) that govern your use of +the associated Content in that directory. + +THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL +OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE +OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO): + +- Eclipse Public License Version 1.0 (available at + http://www.eclipse.org/legal/epl-v10.html) +- Eclipse Distribution License Version 1.0 (available at + http://www.eclipse.org/licenses/edl-v1.0.html) +- Common Public License Version 1.0 (available at + http://www.eclipse.org/legal/cpl-v10.html) +- Apache Software License 1.1 (available at + http://www.apache.org/licenses/LICENSE) +- Apache Software License 2.0 (available at + http://www.apache.org/licenses/LICENSE-2.0) +- Mozilla Public License Version 1.1 (available at + http://www.mozilla.org/MPL/MPL-1.1.html) + +IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO +USE OF THE CONTENT. If no About, Feature License, or Feature Update License is +provided, please contact the Eclipse Foundation to determine what terms and +conditions govern that particular Content. + +Use of Provisioning Technology + +The Eclipse Foundation makes available provisioning software, examples of which +include, but are not limited to, p2 and the Eclipse Update Manager +("Provisioning Technology") for the purpose of allowing users to install +software, documentation, information and/or other materials (collectively +"Installable Software"). This capability is provided with the intent of allowing +such users to install, extend and update Eclipse-based products. Information +about packaging Installable Software is available at +http://eclipse.org/equinox/p2/repository_packaging.html ("Specification"). + +You may use Provisioning Technology to allow other parties to install +Installable Software. You shall be responsible for enabling the applicable +license agreements relating to the Installable Software to be presented to, and +accepted by, the users of the Provisioning Technology in accordance with the +Specification. By using Provisioning Technology in such a manner and making it +available in accordance with the Specification, you further acknowledge your +agreement to, and the acquisition of all necessary rights to permit the +following: + +1. A series of actions may occur ("Provisioning Process") in which a user may + execute the Provisioning Technology on a machine ("Target Machine") with the + intent of installing, extending or updating the functionality of an + Eclipse-based product. +2. During the Provisioning Process, the Provisioning Technology may cause third + party Installable Software or a portion thereof to be accessed and copied to + the Target Machine. +3. Pursuant to the Specification, you will provide to the user the terms and + conditions that govern the use of the Installable Software ("Installable + Software Agreement") and such Installable Software Agreement shall be + accessed from the Target Machine in accordance with the Specification. Such + Installable Software Agreement must inform the user of the terms and + conditions that govern the Installable Software and must solicit acceptance + by the end user in the manner prescribed in such Installable + Software Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the + Installable Software. + +Cryptography + +Content may contain encryption software. The country in which you are currently +may have restrictions on the import, possession, and use, and/or re-export to +another country, of encryption software. BEFORE using any encryption software, +please check the country's laws, regulations and policies concerning the import, +possession, or use, and re-export of encryption software, to see if this is +permitted. + +Java and all Java-based trademarks are trademarks of Oracle Corporation in the +United States, other countries, or both.
diff --git a/com.itemis.xtext.codebuff/META-INF/MANIFEST.MF b/com.itemis.xtext.codebuff/META-INF/MANIFEST.MF new file mode 100644 index 0000000..007b8b6 --- /dev/null +++ b/com.itemis.xtext.codebuff/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: com.itemis.xtext.codebuff +Bundle-SymbolicName: com.itemis.xtext.codebuff +Bundle-Version: 1.0.0.qualifier +Bundle-Vendor: Eclipse OSBP +Automatic-Module-Name: com.itemis.xtext.codebuff +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Require-Bundle: org.eclipse.xtext.xtext.generator;bundle-version="2.11.0", + org.apache.log4j;bundle-version="1.2.15", + com.google.inject;bundle-version="3.0.0", + org.eclipse.xtext.util;bundle-version="2.11.0", + org.eclipse.xtext;bundle-version="2.11.0", + org.eclipse.xtend.lib;bundle-version="2.11.0" +Export-Package: com.itemis.xtext.codebuff
diff --git a/com.itemis.xtext.codebuff/README.txt b/com.itemis.xtext.codebuff/README.txt new file mode 100644 index 0000000..ca63651 --- /dev/null +++ b/com.itemis.xtext.codebuff/README.txt
@@ -0,0 +1,16 @@ +Your code for fork.xtext.codebuff goes in here. + +Add all your sources as you usually do for plugin development. + +If you need more bundles to implement the feature, duplicate this folder and ad the new bundle code into the copy + +Do not forget to add your new bundle to the + - feature pom.xml + - feature feature.xml + - and the aggregator pom.xml +as it is done for this bundle. + +Have fun! + + +You can delete this file from the final project. \ No newline at end of file
diff --git a/com.itemis.xtext.codebuff/about.html b/com.itemis.xtext.codebuff/about.html new file mode 100644 index 0000000..e8b834d --- /dev/null +++ b/com.itemis.xtext.codebuff/about.html
@@ -0,0 +1,28 @@ +<!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>November 30, 2017</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 2.0 ("EPL"). A copy of the EPL is available +at <a href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-2.0</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/com.itemis.xtext.codebuff/about.ini b/com.itemis.xtext.codebuff/about.ini new file mode 100644 index 0000000..7df671f --- /dev/null +++ b/com.itemis.xtext.codebuff/about.ini
@@ -0,0 +1,17 @@ +# about.ini +# contains information about a feature +# java.io.Properties file (ISO 8859-1 with "\" escapes) +# "%key" are externalized strings defined in about.properties +# This file does not need to be translated. + +# Property "aboutText" contains blurb for "About" dialog (translated) +aboutText=%featureText + +# Property "featureImage" contains path to feature image (32x32) +featureImage= + +# Property "appName" contains name of the application (translated) +appName=%featureName + +# Property "welcomePage" contains path to welcome page (special XML-based format) +welcomePage=
diff --git a/com.itemis.xtext.codebuff/about.mappings b/com.itemis.xtext.codebuff/about.mappings new file mode 100644 index 0000000..4511a0a --- /dev/null +++ b/com.itemis.xtext.codebuff/about.mappings
@@ -0,0 +1,6 @@ +# about.mappings +# contains fill-ins for about.properties +# java.io.Properties file (ISO 8859-1 with "\" escapes) +# This file does not need to be translated. + +0=qualifier
diff --git a/com.itemis.xtext.codebuff/about.properties b/com.itemis.xtext.codebuff/about.properties new file mode 100644 index 0000000..5c2b0b9 --- /dev/null +++ b/com.itemis.xtext.codebuff/about.properties
@@ -0,0 +1,32 @@ +#======================================================================= +# Copyright (c) 2019 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Christophe Loetz (Loetz GmbH&Co.KG) - Initial implementation API and implementation +#======================================================================= + +# NLS_MESSAGEFORMAT_VAR + +featureName=org.eclipse.osbp.fork.xtext.codebuff + +################ blurb property #################################### +featureText=\ +Copyright (c) 2009,2019 itemis AG (http://www.itemis.eu), Loetz GmbH&Co.KG (69115 Heidelberg, Germany) and others.\n\ +All rights reserved. This program and the accompanying materials\n\ +are made available under the terms of the Eclipse Public License 2.0\n\ +which accompanies this distribution, and is available at\n\ +https://www.eclipse.org/legal/epl-2.0/\n\ +\n\ +SPDX-License-Identifier: EPL-2.0\n\ +\n\ +Contributors:\n\ +Holger Schill (itemis AG) - Initial implementation API and implementation\n\ +Loetz GmbH&Co.KG - Adaptions to OSBP project\n\ + +################ end of blurb property ####################################
diff --git a/com.itemis.xtext.codebuff/about_files/README.txt b/com.itemis.xtext.codebuff/about_files/README.txt new file mode 100644 index 0000000..cc50489 --- /dev/null +++ b/com.itemis.xtext.codebuff/about_files/README.txt
@@ -0,0 +1 @@ +All external licenses referenced in about file go here \ No newline at end of file
diff --git a/com.itemis.xtext.codebuff/build.properties b/com.itemis.xtext.codebuff/build.properties new file mode 100644 index 0000000..34d2e4d --- /dev/null +++ b/com.itemis.xtext.codebuff/build.properties
@@ -0,0 +1,4 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .
diff --git a/com.itemis.xtext.codebuff/epl-2.0.html b/com.itemis.xtext.codebuff/epl-2.0.html new file mode 100644 index 0000000..637a181 --- /dev/null +++ b/com.itemis.xtext.codebuff/epl-2.0.html
@@ -0,0 +1,300 @@ +<!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" xml:lang="en" lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>Eclipse Public License - Version 2.0</title> + <style type="text/css"> + body { + margin: 1.5em 3em; + } + h1{ + font-size:1.5em; + } + h2{ + font-size:1em; + margin-bottom:0.5em; + margin-top:1em; + } + p { + margin-top: 0.5em; + margin-bottom: 0.5em; + } + ul, ol{ + list-style-type:none; + } + </style> + </head> + <body> + <h1>Eclipse Public License - v 2.0</h1> + <p>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. + </p> + <h2 id="definitions">1. DEFINITIONS</h2> + <p>“Contribution” means:</p> + <ul> + <li>a) in the case of the initial Contributor, the initial content + Distributed under this Agreement, and + </li> + <li> + b) in the case of each subsequent Contributor: + <ul> + <li>i) changes to the Program, and</li> + <li>ii) additions to the Program;</li> + </ul> + 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 changes or additions to the Program that + are not Modified Works. + </li> + </ul> + <p>“Contributor” means any person or entity that Distributes the Program.</p> + <p>“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. + </p> + <p>“Program” means the Contributions Distributed in accordance with this + Agreement. + </p> + <p>“Recipient” means anyone who receives the Program under this Agreement + or any Secondary License (as applicable), including Contributors. + </p> + <p>“Derivative Works” shall mean any work, whether in Source Code or other + form, that is based on (or derived from) the Program and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. + </p> + <p>“Modified Works” shall mean any work in Source Code or other form that + results from an addition to, deletion from, or modification of the + contents of the Program, including, for purposes of clarity any new file + in Source Code form that contains any contents of the Program. Modified + Works shall not include works that contain only declarations, interfaces, + types, classes, structures, or files of the Program solely in each case + in order to link to, bind by name, or subclass the Program or Modified + Works thereof. + </p> + <p>“Distribute” means the acts of a) distributing or b) making available + in any manner that enables the transfer of a copy. + </p> + <p>“Source Code” means the form of a Program preferred for making + modifications, including but not limited to software source code, + documentation source, and configuration files. + </p> + <p>“Secondary License” means either the GNU General Public License, + Version 2.0, or any later versions of that license, including any + exceptions or additional permissions as identified by the initial + Contributor. + </p> + <h2 id="grant-of-rights">2. GRANT OF RIGHTS</h2> + <ul> + <li>a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free copyright + license to reproduce, prepare Derivative Works of, publicly display, + publicly perform, Distribute and sublicense the Contribution of such + Contributor, if any, and such Derivative Works. + </li> + <li>b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, 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 or other 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. + </li> + <li>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. + </li> + <li>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. + </li> + <li>e) Notwithstanding the terms of any Secondary License, no Contributor + makes additional grants to any Recipient (other than those set forth + in this Agreement) as a result of such Recipient's receipt of the + Program under the terms of a Secondary License (if permitted under + the terms of Section 3). + </li> + </ul> + <h2 id="requirements">3. REQUIREMENTS</h2> + <p>3.1 If a Contributor Distributes the Program in any form, then:</p> + <ul> + <li>a) the Program must also be made available as Source Code, in + accordance with section 3.2, and the Contributor must accompany + the Program with a statement that the Source Code for the Program + is available under this Agreement, and informs Recipients how to + obtain it in a reasonable manner on or through a medium customarily + used for software exchange; and + </li> + <li> + b) the Contributor may Distribute the Program under a license + different than this Agreement, provided that such license: + <ul> + <li>i) effectively disclaims on behalf of all other 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; + </li> + <li>ii) effectively excludes on behalf of all other Contributors all + liability for damages, including direct, indirect, special, incidental + and consequential damages, such as lost profits; + </li> + <li>iii) does not attempt to limit or alter the recipients' rights in the + Source Code under section 3.2; and + </li> + <li>iv) requires any subsequent distribution of the Program by any party + to be under a license that satisfies the requirements of this section 3. + </li> + </ul> + </li> + </ul> + <p>3.2 When the Program is Distributed as Source Code:</p> + <ul> + <li>a) it must be made available under this Agreement, or if the Program (i) + is combined with other material in a separate file or files made available + under a Secondary License, and (ii) the initial Contributor attached to + the Source Code the notice described in Exhibit A of this Agreement, + then the Program may be made available under the terms of such + Secondary Licenses, and + </li> + <li>b) a copy of this Agreement must be included with each copy of the Program.</li> + </ul> + <p>3.3 Contributors may not remove or alter any copyright, patent, trademark, + attribution notices, disclaimers of warranty, or limitations of liability + (‘notices’) contained within the Program from any copy of the Program which + they Distribute, provided that Contributors may add their own appropriate + notices. + </p> + <h2 id="commercial-distribution">4. COMMERCIAL DISTRIBUTION</h2> + <p>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. + </p> + <p>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. + </p> + <h2 id="warranty">5. NO WARRANTY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="disclaimer">6. DISCLAIMER OF LIABILITY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="general">7. GENERAL</h2> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. Nothing in this Agreement is intended + to be enforceable by any entity that is not a Contributor or Recipient. + No third-party beneficiary rights are created under this Agreement. + </p> + <h2 id="exhibit-a">Exhibit A – Form of Secondary Licenses Notice</h2> + <p>“This Source Code may also be made available under the following + Secondary Licenses when the conditions for such availability set forth + in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), + version(s), and exceptions or additional permissions here}.” + </p> + <blockquote> + <p>Simply including a copy of this Agreement, including this Exhibit A + is not sufficient to license the Source Code under Secondary Licenses. + </p> + <p>If it is not possible or desirable to put the notice in a particular file, + then You may include the notice in a location (such as a LICENSE file in a + relevant directory) where a recipient would be likely to look for + such a notice. + </p> + <p>You may add additional accurate notices of copyright ownership.</p> + </blockquote> + </body> +</html> \ No newline at end of file
diff --git a/com.itemis.xtext.codebuff/license.html b/com.itemis.xtext.codebuff/license.html new file mode 100644 index 0000000..008b801 --- /dev/null +++ b/com.itemis.xtext.codebuff/license.html
@@ -0,0 +1,189 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<!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>Eclipse Foundation Software User Agreement</title> +</head> + +<body lang="EN-US"> + <h2>Eclipse Foundation Software User Agreement</h2> + <p>November 22, 2017</p> + + <h3>Usage Of Content</h3> + + <p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, + INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS + (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY + THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND + CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS + GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY + APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS + AGREEMENT AND THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE + AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT + USE THE CONTENT.</p> + + <h3>Applicable Licenses</h3> + + <p> + Unless otherwise indicated, all Content made available by the Eclipse + Foundation is provided to you under the terms and conditions of the + Eclipse Public License Version 2.0 ("EPL"). A copy of the + EPL is provided with this Content and is also available at <a + href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>. + For purposes of the EPL, "Program" will mean the Content. + </p> + + <p>Content includes, but is not limited to, source code, object + code, documentation and other files maintained in the Eclipse + Foundation source code repository ("Repository") in software + modules ("Modules") and made available as downloadable + archives ("Downloads").</p> + + <ul> + <li>Content may be structured and packaged into modules to + facilitate delivering, extending, and upgrading the Content. Typical + modules may include plug-ins ("Plug-ins"), plug-in + fragments ("Fragments"), and features + ("Features").</li> + <li>Each Plug-in or Fragment may be packaged as a sub-directory + or JAR (Java™ ARchive) in a directory named + "plugins".</li> + <li>A Feature is a bundle of one or more Plug-ins and/or + Fragments and associated material. Each Feature may be packaged as a + sub-directory in a directory named "features". Within a + Feature, files named "feature.xml" may contain a list of + the names and version numbers of the Plug-ins and/or Fragments + associated with that Feature.</li> + <li>Features may also include other Features ("Included + Features"). Within a Feature, files named + "feature.xml" may contain a list of the names and version + numbers of Included Features.</li> + </ul> + + <p>The terms and conditions governing Plug-ins and Fragments should + be contained in files named "about.html" + ("Abouts"). The terms and conditions governing Features and + Included Features should be contained in files named + "license.html" ("Feature Licenses"). Abouts and + Feature Licenses may be located in any directory of a Download or + Module including, but not limited to the following locations:</p> + + <ul> + <li>The top-level (root) directory</li> + <li>Plug-in and Fragment directories</li> + <li>Inside Plug-ins and Fragments packaged as JARs</li> + <li>Sub-directories of the directory named "src" of + certain Plug-ins</li> + <li>Feature directories</li> + </ul> + + <p>Note: if a Feature made available by the Eclipse Foundation is + installed using the Provisioning Technology (as defined below), you + must agree to a license ("Feature Update License") during + the installation process. If the Feature contains Included Features, + the Feature Update License should either provide you with the terms + and conditions governing the Included Features or inform you where you + can locate them. Feature Update Licenses may be found in the + "license" property of files named + "feature.properties" found within a Feature. Such Abouts, + Feature Licenses, and Feature Update Licenses contain the terms and + conditions (or references to such terms and conditions) that govern + your use of the associated Content in that directory.</p> + + <p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY + REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND + CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT + ARE NOT LIMITED TO):</p> + + <ul> + <li>Eclipse Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>) + </li> + <li>Eclipse Distribution License Version 1.0 (available at <a + href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>) + </li> + <li>Common Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>) + </li> + <li>Apache Software License 1.1 (available at <a + href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>) + </li> + <li>Apache Software License 2.0 (available at <a + href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>) + </li> + <li>Mozilla Public License Version 1.1 (available at <a + href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>) + </li> + </ul> + + <p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND + CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, + or Feature Update License is provided, please contact the Eclipse + Foundation to determine what terms and conditions govern that + particular Content.</p> + + + <h3>Use of Provisioning Technology</h3> + + <p> + The Eclipse Foundation makes available provisioning software, examples + of which include, but are not limited to, p2 and the Eclipse Update + Manager ("Provisioning Technology") for the purpose of + allowing users to install software, documentation, information and/or + other materials (collectively "Installable Software"). This + capability is provided with the intent of allowing such users to + install, extend and update Eclipse-based products. Information about + packaging Installable Software is available at <a + href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a> + ("Specification"). + </p> + + <p>You may use Provisioning Technology to allow other parties to + install Installable Software. You shall be responsible for enabling + the applicable license agreements relating to the Installable Software + to be presented to, and accepted by, the users of the Provisioning + Technology in accordance with the Specification. By using Provisioning + Technology in such a manner and making it available in accordance with + the Specification, you further acknowledge your agreement to, and the + acquisition of all necessary rights to permit the following:</p> + + <ol> + <li>A series of actions may occur ("Provisioning + Process") in which a user may execute the Provisioning + Technology on a machine ("Target Machine") with the intent + of installing, extending or updating the functionality of an + Eclipse-based product.</li> + <li>During the Provisioning Process, the Provisioning Technology + may cause third party Installable Software or a portion thereof to be + accessed and copied to the Target Machine.</li> + <li>Pursuant to the Specification, you will provide to the user + the terms and conditions that govern the use of the Installable + Software ("Installable Software Agreement") and such + Installable Software Agreement shall be accessed from the Target + Machine in accordance with the Specification. Such Installable + Software Agreement must inform the user of the terms and conditions + that govern the Installable Software and must solicit acceptance by + the end user in the manner prescribed in such Installable Software + Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the Installable + Software.</li> + </ol> + + <h3>Cryptography</h3> + + <p>Content may contain encryption software. The country in which + you are currently may have restrictions on the import, possession, and + use, and/or re-export to another country, of encryption software. + BEFORE using any encryption software, please check the country's laws, + regulations and policies concerning the import, possession, or use, + and re-export of encryption software, to see if this is permitted.</p> + + <p> + <small>Java and all Java-based trademarks are trademarks of + Oracle Corporation in the United States, other countries, or both.</small> + </p> +</body> +</html>
diff --git a/com.itemis.xtext.codebuff/pom.xml b/com.itemis.xtext.codebuff/pom.xml new file mode 100644 index 0000000..cb5a060 --- /dev/null +++ b/com.itemis.xtext.codebuff/pom.xml
@@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +#======================================================================= +# Copyright (c) 2019 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Christophe Loetz (Loetz GmbH&Co.KG) - Initial implementation API and implementation +#======================================================================= +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.eclipse.osbp.fork.xtext.codebuff</groupId> + <artifactId>org.eclipse.osbp.fork.xtext.codebuff.aggregator</artifactId> + <version>0.9.0-SNAPSHOT</version> + <relativePath>..</relativePath> + </parent> + + <artifactId>com.itemis.xtext.codebuff</artifactId> + <packaging>eclipse-plugin</packaging> + <version>1.0.0-SNAPSHOT</version> + + <build> + <sourceDirectory>src</sourceDirectory> + </build> + + </project>
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/Antlr4Grammar.xtend b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/Antlr4Grammar.xtend new file mode 100644 index 0000000..0371aeb --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/Antlr4Grammar.xtend
@@ -0,0 +1,18 @@ +/******************************************************************************* + * Copyright (c) 2015 itemis AG (http://www.itemis.eu) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff + +import org.eclipse.xtend.lib.annotations.Data + +@Data +class Antlr4Grammar extends org.eclipse.xtext.xtext.generator.parser.antlr.AntlrGrammar{ + + override String getGrammarFileName() { + name.replace('.', '/') + ".g4" + } +}
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/Antlr4ToolFacade.java b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/Antlr4ToolFacade.java new file mode 100644 index 0000000..eddf088 --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/Antlr4ToolFacade.java
@@ -0,0 +1,222 @@ +/******************************************************************************* + * Copyright (c) 2009 itemis AG (http://www.itemis.eu) 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 + *******************************************************************************/ +package com.itemis.xtext.codebuff; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileOutputStream; +import java.io.FilenameFilter; +import java.io.IOException; +import java.lang.reflect.Constructor; +import java.lang.reflect.Method; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLClassLoader; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import javax.tools.JavaCompiler; +import javax.tools.JavaFileObject; +import javax.tools.StandardJavaFileManager; +import javax.tools.ToolProvider; + +import org.apache.log4j.Logger; +import org.eclipse.emf.common.util.WrappedException; + +import com.google.common.collect.Lists; +import com.google.common.io.Files; + +public class Antlr4ToolFacade { + + private static final String TARGETTOCOPYTOKENSTO = "/org/antlr/codebuff/"; + + private static final String SRC_GEN = "/src-gen/"; + + private static final String ORG_ANTLR_CODEBUFF = "org.antlr.codebuff"; + + private final static Logger log = Logger.getLogger(Antlr4ToolFacade.class); + + public final static String className = "org.antlr.v4.Tool"; + + private ClassLoader loader = Antlr4ToolFacade.class.getClassLoader(); + + public void setLoader(ClassLoader loader) { + this.loader = loader; + } + + private String downloadURL = "http://central.maven.org/maven2/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar"; + private boolean askBeforeDownload = true; + + public static final String ANTLR4GEN = "antlr4gen"; + public static final String TARGETFOLDER = ANTLR4GEN + "/target/"; + + public void setAskBeforeDownload(boolean shouldAsk) { + this.askBeforeDownload = shouldAsk; + } + + public void setDownloadFrom(String downloadURL) { + this.downloadURL = downloadURL; + } + + private String downloadTo = "./antlr-4.5.3.jar"; + + public void setDownloadTo(String path) { + this.downloadTo = path; + } + + protected File file() { + return new File(downloadTo); + } + + protected String getToolRunnerClassName() { + return className; + } + + protected ClassLoader initializedClassLoader() { + try { + loader.loadClass(getToolRunnerClassName()); + return loader; + } catch (ClassNotFoundException e) { + if (!file().exists()) { + if (!download()) + return null; + } + if (file().exists()) { + try { + URL url = file().toURI().toURL(); + loader = new URLClassLoader(new URL[] { url }, null); + + return loader; + + } catch (MalformedURLException e1) { + log.error(e1.getMessage(), e1); + } + } + return null; + } + } + + public boolean download() { + try { + if (askBeforeDownload) { + boolean ok = false; + while (!ok) { + System.err.print( + "\n*ATTENTION*\nIt is recommended to use the ANTLR 4 parser generator (BSD licence - http://www.antlr.org/license.html).\nDo you agree to download it (size 1MB) from '" + + downloadURL + "'? (type 'y' or 'n' and hit enter)"); + int read = System.in.read(); + if (read == 'n') { + return false; + } else if (read == 'y') { + ok = true; + } + } + } + log.info("downloading file from '" + downloadURL + "' ..."); + BufferedInputStream in = new BufferedInputStream(new URL(downloadURL).openStream()); + try { + FileOutputStream out = new FileOutputStream(file()); + try { + byte[] buffer = new byte[2048]; + int readBytes = -1; + while ((readBytes = in.read(buffer)) != -1) { + out.write(buffer, 0, readBytes); + } + } finally { + out.close(); + } + } finally { + in.close(); + } + log.info("finished downloading."); + } catch (IOException e) { + System.err.println("Downloading ANTLR4 parser generator failed: " + e.getMessage()); + return false; + } catch (Exception e) { + log.error(e.getMessage(), e); + return false; + } + if (initializedClassLoader() == null) { + log.error("Loaded jar doesn't contain " + className); + return false; + } + return true; + } + + private IllegalStateException getNoClassFoundException() { + return new IllegalStateException("Couldn't find ANTLR generator on class path. Please download manually from '" + + downloadURL + "' and put it on the classpath."); + } + + public void runWithEncodingAndParams(String grammarFullPath, String explicitEncoding) { + ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader(); + try { + ClassLoader myLoader = initializedClassLoader(); + Thread.currentThread().setContextClassLoader(myLoader); + Class<?> class1 = myLoader.loadClass(className); + + if (class1 == null) + throw getNoClassFoundException(); + + Object[] args = new Object[] { new String[] { grammarFullPath, "-o", ANTLR4GEN + SRC_GEN, "-package", ORG_ANTLR_CODEBUFF } }; + Constructor<?> constructor = class1.getConstructor(new Class[] { String[].class }); + Object newInstance = constructor.newInstance(args); + log.info("Loading AntLR 4 grammar."); + Method loadGrammar = class1.getMethod("loadGrammar", new Class[] { String.class }); + Object grammar = loadGrammar.invoke(newInstance, grammarFullPath); + //Method process = class1.getMethod("process", new Class[] { grammar.getClass(), boolean.class }); + Method process = class1.getMethod("processGrammarsOnCommandLine"); + + log.info("Generate AntLR 4 parser."); + //process.invoke(newInstance, grammar, true); + process.invoke(newInstance); + // Compile to code to target folder! + JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); + File src_gen_folder = new File("./" + ANTLR4GEN + SRC_GEN); + ArrayList<File> filesToCompile = Lists.newArrayList(); + for (File child : src_gen_folder.listFiles(new FilenameFilter() { + + @Override + public boolean accept(File dir, String name) { + return name.endsWith("java"); + } + })) { + filesToCompile.add(child); + } + StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null); + Iterable<? extends JavaFileObject> javaFileObjectsFromFiles = fileManager + .getJavaFileObjectsFromFiles(filesToCompile); + List<String> optionList = new ArrayList<String>(); + // set compiler's classpath to be same as the runtime's + optionList.addAll(Arrays.asList("-classpath", + System.getProperty("java.class.path") + ";" + file().getAbsolutePath(), "-d", TARGETFOLDER)); + log.info("Compile AntLR 4 Parser with optionList "+ optionList.toString()); + compiler.getTask(null, fileManager, null, optionList, null, javaFileObjectsFromFiles).call(); + fileManager.close(); + for( File child : src_gen_folder.listFiles(new FilenameFilter() { + + @Override + public boolean accept(File dir, String name) { + return name.endsWith("tokens"); + } + })) { + Files.copy(child, new File(TARGETFOLDER + TARGETTOCOPYTOKENSTO + child.getName())); + } + } catch (Exception e) { + throw new WrappedException(e); + } finally { + Thread.currentThread().setContextClassLoader(contextClassLoader); + } + + } + + public boolean isWorkable() { + return initializedClassLoader() != null; + } +}
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffAntlrGrammarGenerator.xtend b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffAntlrGrammarGenerator.xtend new file mode 100644 index 0000000..31a8e4c --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffAntlrGrammarGenerator.xtend
@@ -0,0 +1,60 @@ +/******************************************************************************* + * Copyright (c) 2017 itemis AG (http://www.itemis.eu) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff + +import com.google.inject.Inject +import org.eclipse.xtext.AbstractElement +import org.eclipse.xtext.Grammar +import org.eclipse.xtext.TerminalRule +import org.eclipse.xtext.xtext.generator.parser.antlr.AbstractAntlrGrammarGenerator +import org.eclipse.xtext.xtext.generator.parser.antlr.AntlrOptions +import static extension com.itemis.xtext.codebuff.CodebuffTerminalRuleToLexerBody.* + +/** + * @author Holger Schill - Initial contribution and API + */ +class CodebuffAntlrGrammarGenerator extends AbstractAntlrGrammarGenerator { + @Inject CodebuffGrammarNaming naming + + override protected getGrammarNaming() { + naming + } + + override protected compileParserOptions(Grammar it, AntlrOptions options) { + "options {contextSuperClass=org.antlr.v4.runtime.RuleContextWithAltNum;}" + } + + override protected compileParserHeader(Grammar it, AntlrOptions options) ''' + ''' + + override protected compileLexerHeader(Grammar it, AntlrOptions options) ''' + ''' + + protected override String ebnfPredicate(AbstractElement it, AntlrOptions options) '''''' + + protected override String dataTypeEbnfPredicate(AbstractElement it) '''''' + + protected override dispatch compileRule(TerminalRule it, Grammar grammar, AntlrOptions options) ''' + «IF options.isBacktrackLexer» + «IF !isSyntheticTerminalRule(it)» + «IF fragment» + fragment «ruleName» : «toLexerBody»; + «ELSE» + fragment «ruleName» : FRAGMENT_«ruleName»; + fragment FRAGMENT_«ruleName» : «toLexerBody»; + «ENDIF» + «ENDIF» + «ELSE» + «IF isSyntheticTerminalRule(it)» + fragment «ruleName» : ; + «ELSE» + «IF fragment»fragment «ENDIF»«ruleName» : «toLexerBody»«IF shouldBeSkipped(grammar)» -> channel(HIDDEN)«ENDIF»; + «ENDIF» + «ENDIF» + ''' +}
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffGrammarGeneratorFragment.xtend b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffGrammarGeneratorFragment.xtend new file mode 100644 index 0000000..c425678 --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffGrammarGeneratorFragment.xtend
@@ -0,0 +1,59 @@ +/******************************************************************************* + * Copyright (c) 2017 itemis AG (http://www.itemis.eu) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff + +import com.google.inject.Inject +import java.io.File +import org.eclipse.xtext.util.Files +import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment +import org.eclipse.xtext.xtext.generator.CodeConfig +import org.eclipse.xtext.xtext.generator.IXtextGeneratorLanguage +import org.eclipse.xtext.xtext.generator.model.GuiceModuleAccess +import org.eclipse.xtext.xtext.generator.model.TypeReference +import org.eclipse.xtext.xtext.generator.parser.antlr.AntlrOptions + +/** + * @author Holger Schill - Initial contribution and API + */ +class CodebuffGrammarGeneratorFragment extends AbstractXtextGeneratorFragment { + + @Inject CodebuffAntlrGrammarGenerator generator + @Inject Antlr4ToolFacade antlrTool + @Inject CodebuffToolFacade codebuffTool + @Inject CodebuffGrammarNaming naming + @Inject CodeConfig codeConfig + @Inject IXtextGeneratorLanguage language + + override generate() { + new GuiceModuleAccess.BindingFactory().addConfiguredBinding("CodeBuff", ''' + binder.bind(String.class).annotatedWith(Names.named("COMMENTRULE")).toInstance("RULE_SL_COMMENT"); + binder.bind(int.class).annotatedWith(Names.named("INDENT")).toInstance(4); + ''').contributeTo(language.runtimeGenModule) + new GuiceModuleAccess.BindingFactory().addTypeToType( + new TypeReference("org.eclipse.xtext.ui.editor.formatting.IContentFormatterFactory"), + new TypeReference("com.itemis.xtext.codebuff.ui.CodebuffContentFormatterFactory")). + contributeTo(language.eclipsePluginGenModule) + val fsa = projectConfig.runtime.srcGen + generator.generate(grammar, new AntlrOptions(), fsa) + val file = new File(fsa.path) + val root = projectConfig.runtime.root + + val antlr4gen = new File(root.path + "/antlr4gen/"); + if (antlr4gen.exists) + Files.cleanFolder(antlr4gen, null, true, true) + antlr4gen.mkdir + new File(root.path + "/antlr4gen/target/").mkdirs; + new File(root.path + "/antlr4gen/src-gen/").mkdirs + if (file.exists) { + val fileName = file.absolutePath + "/" + naming.getParserGrammar(grammar).grammarFileName + antlrTool.runWithEncodingAndParams(fileName, codeConfig.encoding) + codebuffTool.initializeCodebuff() + + } + } +}
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffGrammarNaming.xtend b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffGrammarNaming.xtend new file mode 100644 index 0000000..ad86a28 --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffGrammarNaming.xtend
@@ -0,0 +1,33 @@ +/******************************************************************************* + * Copyright (c) 2017 itemis AG (http://www.itemis.eu) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff + +import org.eclipse.xtext.Grammar +import org.eclipse.xtext.xtext.generator.parser.antlr.AntlrGrammar +import org.eclipse.xtext.xtext.generator.parser.antlr.GrammarNaming + +/** + * @author Holger Schill - Initial contribution and API + */ +class CodebuffGrammarNaming extends GrammarNaming { + override getInternalParserSuperClass(Grammar it) { + null + } + + override isCombinedGrammar(Grammar it) { + true + } + + override protected getGrammarNamePrefix(Grammar it) { + "Codebuff" + } + + override AntlrGrammar getParserGrammar(Grammar it) { + new Antlr4Grammar(internalParserPackage, '''«grammarNamePrefix»«IF !combinedGrammar»Parser«ENDIF»''') + } +}
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffTerminalRuleToLexerBody.java b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffTerminalRuleToLexerBody.java new file mode 100644 index 0000000..c726b31 --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffTerminalRuleToLexerBody.java
@@ -0,0 +1,42 @@ +/******************************************************************************* + * Copyright (c) 2017 itemis AG (http://www.itemis.eu) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff; + +import org.eclipse.xtext.NegatedToken; +import org.eclipse.xtext.TerminalRule; +import org.eclipse.xtext.UntilToken; +import org.eclipse.xtext.util.Strings; + +/** + * @author Holger Schill - Initial contribution and API + */ +public class CodebuffTerminalRuleToLexerBody extends TerminalRuleToLexerBody { + + public CodebuffTerminalRuleToLexerBody() { + super(); + } + + public static String toLexerBody(TerminalRule rule) { + return new CodebuffTerminalRuleToLexerBody().print(rule); + } + + @Override + public String caseNegatedToken(NegatedToken object) { + result.append("~"); + doSwitch(object.getTerminal()); + result.append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + @Override + public String caseUntilToken(UntilToken object) { + result.append("*?"); + doSwitch(object.getTerminal()); + return ""; + } +}
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffToolFacade.java b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffToolFacade.java new file mode 100644 index 0000000..a65bfb7 --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/CodebuffToolFacade.java
@@ -0,0 +1,154 @@ +/******************************************************************************* + * Copyright (c) 2009 itemis AG (http://www.itemis.eu) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLClassLoader; + +import org.apache.log4j.Logger; +import org.eclipse.emf.common.util.WrappedException; + +public class CodebuffToolFacade { + + private final static Logger log = Logger.getLogger(CodebuffToolFacade.class); + + public final static String className = "org.antlr.codebuff.Tool"; + + private ClassLoader loader = CodebuffToolFacade.class.getClassLoader(); + + public void setLoader(ClassLoader loader) { + this.loader = loader; + } + + private String downloadURL = "https://github.com/holgerschill/codebuff_mirror/raw/master/codebuff-1.5.1.jar"; + private boolean askBeforeDownload = true; + + public void setAskBeforeDownload(boolean shouldAsk) { + this.askBeforeDownload = shouldAsk; + } + + public void setDownloadFrom(String downloadURL) { + this.downloadURL = downloadURL; + } + + public static final String downloadTo = "./codebuff-1.5.1.jar"; + + protected File file() { + return new File(downloadTo); + } + + protected String getToolRunnerClassName() { + return className; + } + + protected ClassLoader initializedClassLoader() { + try { + loader.loadClass(getToolRunnerClassName()); + return loader; + } catch (ClassNotFoundException e) { + if (!file().exists()) { + if (!download()) + return null; + } + if (file().exists()) { + try { + File targetFolder = new File(Antlr4ToolFacade.TARGETFOLDER); + if(!targetFolder.exists()) + return null; + URL url = file().toURI().toURL(); + loader = new URLClassLoader(new URL[] { url }, null); + return loader; + + } catch (MalformedURLException e1) { + log.error(e1.getMessage(), e1); + } + } + return null; + } + } + + public boolean download() { + try { + if (askBeforeDownload) { + boolean ok = false; + while (!ok) { + System.err.print( + "\n*ATTENTION*\nIt is recommended to use Codebuff (BSD licence - http://www.antlr.org/license.html).\nDo you agree to download it (size 1MB) from '" + + downloadURL + "'? (type 'y' or 'n' and hit enter)"); + int read = System.in.read(); + if (read == 'n') { + return false; + } else if (read == 'y') { + ok = true; + } + } + } + log.info("downloading file from '" + downloadURL + "' ..."); + BufferedInputStream in = new BufferedInputStream(new URL(downloadURL).openStream()); + try { + FileOutputStream out = new FileOutputStream(file()); + try { + byte[] buffer = new byte[2048]; + int readBytes = -1; + while ((readBytes = in.read(buffer)) != -1) { + out.write(buffer, 0, readBytes); + } + } finally { + out.close(); + } + } finally { + in.close(); + } + log.info("finished downloading."); + } catch (IOException e) { + System.err.println("Downloading Codebuff failed: " + e.getMessage()); + return false; + } catch (Exception e) { + log.error(e.getMessage(), e); + return false; + } + if (initializedClassLoader() == null) { + log.error("Loaded jar doesn't contain " + className); + return false; + } + return true; + } + + private IllegalStateException getNoClassFoundException() { + return new IllegalStateException("Couldn't find Codebuff on class path. Please download manually from '" + + downloadURL + "' and put it on the classpath."); + } + + public void initializeCodebuff() { + ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader(); + try { + ClassLoader myLoader = initializedClassLoader(); + Thread.currentThread().setContextClassLoader(myLoader); + Class<?> tool = myLoader.loadClass(className); + + if (tool == null) + throw getNoClassFoundException(); + + + } catch (Exception e) { + throw new WrappedException(e); + } finally { + Thread.currentThread().setContextClassLoader(contextClassLoader); + } + + } + + public boolean isWorkable() { + return initializedClassLoader() != null; + } +}
diff --git a/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/TerminalRuleToLexerBody.java b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/TerminalRuleToLexerBody.java new file mode 100644 index 0000000..87e4f8c --- /dev/null +++ b/com.itemis.xtext.codebuff/src/com/itemis/xtext/codebuff/TerminalRuleToLexerBody.java
@@ -0,0 +1,220 @@ +/******************************************************************************* + * Copyright (c) 2008 itemis AG (http://www.itemis.eu) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package com.itemis.xtext.codebuff; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.AbstractElement; +import org.eclipse.xtext.Alternatives; +import org.eclipse.xtext.CharacterRange; +import org.eclipse.xtext.EOF; +import org.eclipse.xtext.Group; +import org.eclipse.xtext.Keyword; +import org.eclipse.xtext.NegatedToken; +import org.eclipse.xtext.ParserRule; +import org.eclipse.xtext.RuleCall; +import org.eclipse.xtext.TerminalRule; +import org.eclipse.xtext.UntilToken; +import org.eclipse.xtext.Wildcard; +import org.eclipse.xtext.util.Strings; +import org.eclipse.xtext.util.XtextSwitch; +import org.eclipse.xtext.xtext.generator.parser.antlr.AntlrGrammarGenUtil; + +public class TerminalRuleToLexerBody extends XtextSwitch<String>{ + + protected final StringBuilder result; + + protected TerminalRuleToLexerBody() { + this.result = new StringBuilder(); + } + + public static String toLexerBody(TerminalRule rule) { + return new TerminalRuleToLexerBody().print(rule); + } + + public String print(TerminalRule rule) { + doSwitch(rule.getAlternatives()); + return result.toString(); + } + + @Override + public String caseAlternatives(Alternatives object) { + result.append('('); + boolean first = true; + for(AbstractElement elem: object.getElements()) { + if (!first) result.append('|'); + first = false; + doSwitch(elem); + } + result.append(')').append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + @Override + public String caseCharacterRange(CharacterRange object) { + if (!Strings.isEmpty(object.getCardinality())) + result.append('('); + doSwitch(object.getLeft()); + result.append(".."); + doSwitch(object.getRight()); + if (!Strings.isEmpty(object.getCardinality())) { + result.append(')'); + result.append(Strings.emptyIfNull(object.getCardinality())); + } + return ""; + } + + @Override + public String defaultCase(EObject object) { + throw new IllegalArgumentException(object.eClass().getName() + " is not a valid argument."); + } + + @Override + public String caseGroup(Group object) { + if (!Strings.isEmpty(object.getCardinality())) + result.append('('); + boolean first = true; + for (AbstractElement elem : object.getElements()) { + if (!first) result.append(' '); + first = false; + doSwitch(elem); + } + if (!Strings.isEmpty(object.getCardinality())) + result.append(')'); + result.append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + @Override + public String caseKeyword(Keyword object) { + result.append("'"); + String value = toLexerString(object.getValue()); + result.append(value).append("'"); + result.append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + private String toLexerString(String theString) { +// return Strings.convertToJavaString(value); + int len = theString.length(); + int bufLen = len * 2; + if (bufLen < 0) { + bufLen = Integer.MAX_VALUE; + } + StringBuffer outBuffer = new StringBuffer(bufLen); + + for (int x = 0; x < len; x++) { + char aChar = theString.charAt(x); + // Handle common case first, selecting largest block that + // avoids the specials below + if ((aChar > 61) && (aChar < 127)) { + if (aChar == '\\') { + outBuffer.append('\\'); + outBuffer.append('\\'); + continue; + } + outBuffer.append(aChar); + continue; + } + switch (aChar) { + case ' ': + outBuffer.append(' '); + break; + case '\t': + outBuffer.append('\\'); + outBuffer.append('t'); + break; + case '\n': + outBuffer.append('\\'); + outBuffer.append('n'); + break; + case '\r': + outBuffer.append('\\'); + outBuffer.append('r'); + break; + case '\f': + outBuffer.append('\\'); + outBuffer.append('f'); + break; + case '\b': + outBuffer.append('\\'); + outBuffer.append('b'); + break; + case '\'': + outBuffer.append('\\'); + outBuffer.append('\''); + break; + // don't escape double quotes +// case '"': +// outBuffer.append('\\'); +// outBuffer.append('"'); +// break; + default: + if ((aChar < 0x0020) || (aChar > 0x007e)) { + outBuffer.append('\\'); + outBuffer.append('u'); + outBuffer.append(Strings.toHex((aChar >> 12) & 0xF)); + outBuffer.append(Strings.toHex((aChar >> 8) & 0xF)); + outBuffer.append(Strings.toHex((aChar >> 4) & 0xF)); + outBuffer.append(Strings.toHex(aChar & 0xF)); + } + else { + outBuffer.append(aChar); + } + } + } + return outBuffer.toString(); + } + + @Override + public String caseWildcard(Wildcard object) { + result.append('.'); + result.append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + @Override + public String caseEOF(EOF object) { + result.append("EOF"); + result.append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + @Override + public String caseTerminalRule(TerminalRule object) { + result.append(AntlrGrammarGenUtil.getRuleName(object)); + return ""; + } + + @Override + public String caseParserRule(ParserRule object) { + throw new IllegalStateException("Cannot call parser rules that are not terminal rules."); + } + + @Override + public String caseRuleCall(RuleCall object) { + doSwitch(object.getRule()); + result.append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + @Override + public String caseNegatedToken(NegatedToken object) { + result.append("~("); + doSwitch(object.getTerminal()); + result.append(")").append(Strings.emptyIfNull(object.getCardinality())); + return ""; + } + + @Override + public String caseUntilToken(UntilToken object) { + result.append("( options {greedy=false;} : . )*"); + doSwitch(object.getTerminal()); + return ""; + } + +}
diff --git a/com.itemis.xtext.codebuff/xtend-gen/.gitignore b/com.itemis.xtext.codebuff/xtend-gen/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/com.itemis.xtext.codebuff/xtend-gen/.gitignore
@@ -0,0 +1,2 @@ +* +!.gitignore
diff --git a/epl-2.0.html b/epl-2.0.html new file mode 100644 index 0000000..637a181 --- /dev/null +++ b/epl-2.0.html
@@ -0,0 +1,300 @@ +<!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" xml:lang="en" lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>Eclipse Public License - Version 2.0</title> + <style type="text/css"> + body { + margin: 1.5em 3em; + } + h1{ + font-size:1.5em; + } + h2{ + font-size:1em; + margin-bottom:0.5em; + margin-top:1em; + } + p { + margin-top: 0.5em; + margin-bottom: 0.5em; + } + ul, ol{ + list-style-type:none; + } + </style> + </head> + <body> + <h1>Eclipse Public License - v 2.0</h1> + <p>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. + </p> + <h2 id="definitions">1. DEFINITIONS</h2> + <p>“Contribution” means:</p> + <ul> + <li>a) in the case of the initial Contributor, the initial content + Distributed under this Agreement, and + </li> + <li> + b) in the case of each subsequent Contributor: + <ul> + <li>i) changes to the Program, and</li> + <li>ii) additions to the Program;</li> + </ul> + 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 changes or additions to the Program that + are not Modified Works. + </li> + </ul> + <p>“Contributor” means any person or entity that Distributes the Program.</p> + <p>“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. + </p> + <p>“Program” means the Contributions Distributed in accordance with this + Agreement. + </p> + <p>“Recipient” means anyone who receives the Program under this Agreement + or any Secondary License (as applicable), including Contributors. + </p> + <p>“Derivative Works” shall mean any work, whether in Source Code or other + form, that is based on (or derived from) the Program and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. + </p> + <p>“Modified Works” shall mean any work in Source Code or other form that + results from an addition to, deletion from, or modification of the + contents of the Program, including, for purposes of clarity any new file + in Source Code form that contains any contents of the Program. Modified + Works shall not include works that contain only declarations, interfaces, + types, classes, structures, or files of the Program solely in each case + in order to link to, bind by name, or subclass the Program or Modified + Works thereof. + </p> + <p>“Distribute” means the acts of a) distributing or b) making available + in any manner that enables the transfer of a copy. + </p> + <p>“Source Code” means the form of a Program preferred for making + modifications, including but not limited to software source code, + documentation source, and configuration files. + </p> + <p>“Secondary License” means either the GNU General Public License, + Version 2.0, or any later versions of that license, including any + exceptions or additional permissions as identified by the initial + Contributor. + </p> + <h2 id="grant-of-rights">2. GRANT OF RIGHTS</h2> + <ul> + <li>a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free copyright + license to reproduce, prepare Derivative Works of, publicly display, + publicly perform, Distribute and sublicense the Contribution of such + Contributor, if any, and such Derivative Works. + </li> + <li>b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, 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 or other 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. + </li> + <li>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. + </li> + <li>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. + </li> + <li>e) Notwithstanding the terms of any Secondary License, no Contributor + makes additional grants to any Recipient (other than those set forth + in this Agreement) as a result of such Recipient's receipt of the + Program under the terms of a Secondary License (if permitted under + the terms of Section 3). + </li> + </ul> + <h2 id="requirements">3. REQUIREMENTS</h2> + <p>3.1 If a Contributor Distributes the Program in any form, then:</p> + <ul> + <li>a) the Program must also be made available as Source Code, in + accordance with section 3.2, and the Contributor must accompany + the Program with a statement that the Source Code for the Program + is available under this Agreement, and informs Recipients how to + obtain it in a reasonable manner on or through a medium customarily + used for software exchange; and + </li> + <li> + b) the Contributor may Distribute the Program under a license + different than this Agreement, provided that such license: + <ul> + <li>i) effectively disclaims on behalf of all other 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; + </li> + <li>ii) effectively excludes on behalf of all other Contributors all + liability for damages, including direct, indirect, special, incidental + and consequential damages, such as lost profits; + </li> + <li>iii) does not attempt to limit or alter the recipients' rights in the + Source Code under section 3.2; and + </li> + <li>iv) requires any subsequent distribution of the Program by any party + to be under a license that satisfies the requirements of this section 3. + </li> + </ul> + </li> + </ul> + <p>3.2 When the Program is Distributed as Source Code:</p> + <ul> + <li>a) it must be made available under this Agreement, or if the Program (i) + is combined with other material in a separate file or files made available + under a Secondary License, and (ii) the initial Contributor attached to + the Source Code the notice described in Exhibit A of this Agreement, + then the Program may be made available under the terms of such + Secondary Licenses, and + </li> + <li>b) a copy of this Agreement must be included with each copy of the Program.</li> + </ul> + <p>3.3 Contributors may not remove or alter any copyright, patent, trademark, + attribution notices, disclaimers of warranty, or limitations of liability + (‘notices’) contained within the Program from any copy of the Program which + they Distribute, provided that Contributors may add their own appropriate + notices. + </p> + <h2 id="commercial-distribution">4. COMMERCIAL DISTRIBUTION</h2> + <p>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. + </p> + <p>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. + </p> + <h2 id="warranty">5. NO WARRANTY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="disclaimer">6. DISCLAIMER OF LIABILITY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="general">7. GENERAL</h2> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. Nothing in this Agreement is intended + to be enforceable by any entity that is not a Contributor or Recipient. + No third-party beneficiary rights are created under this Agreement. + </p> + <h2 id="exhibit-a">Exhibit A – Form of Secondary Licenses Notice</h2> + <p>“This Source Code may also be made available under the following + Secondary Licenses when the conditions for such availability set forth + in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), + version(s), and exceptions or additional permissions here}.” + </p> + <blockquote> + <p>Simply including a copy of this Agreement, including this Exhibit A + is not sufficient to license the Source Code under Secondary Licenses. + </p> + <p>If it is not possible or desirable to put the notice in a particular file, + then You may include the notice in a location (such as a LICENSE file in a + relevant directory) where a recipient would be likely to look for + such a notice. + </p> + <p>You may add additional accurate notices of copyright ownership.</p> + </blockquote> + </body> +</html> \ No newline at end of file
diff --git a/jenkins.build.config.xml b/jenkins.build.config.xml new file mode 100644 index 0000000..3c01736 --- /dev/null +++ b/jenkins.build.config.xml
@@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!--#======================================================================= --> +<!--# Copyright (c) 2016 - Loetz GmbH&Co.KG --> +<!--# All rights reserved. This program and the accompanying materials --> +<!--# are made available under the terms of the Eclipse Public License 2.0 --> +<!--# which accompanies this distribution, and is available at --> +<!--# https://www.eclipse.org/legal/epl-2.0/ --> +<!--# --> +<!--# SPDX-License-Identifier: EPL-2.0 --> +<!--# --> +<!--# Contributors: --> +<!--# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation --> +<!--#======================================================================= --> +<!--# Module specific parameters for the Jenkins Job --> +<!--#======================================================================= --> + +<jenkins> + <jenkins.build.after.releng /> + <jenkins.build.technologystack /> + <settings>${user.home}/.m2/settingsMirrors.xml</settings> + <!-- DO NOT EDIT BELOW THIS LINE --> + <jenkins.build.dependencies> + <jenkins.build.dependency>org.eclipse.osbp.releng.maven</jenkins.build.dependency> + </jenkins.build.dependencies> +</jenkins>
diff --git a/license.html b/license.html new file mode 100644 index 0000000..008b801 --- /dev/null +++ b/license.html
@@ -0,0 +1,189 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<!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>Eclipse Foundation Software User Agreement</title> +</head> + +<body lang="EN-US"> + <h2>Eclipse Foundation Software User Agreement</h2> + <p>November 22, 2017</p> + + <h3>Usage Of Content</h3> + + <p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, + INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS + (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY + THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND + CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS + GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY + APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS + AGREEMENT AND THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE + AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT + USE THE CONTENT.</p> + + <h3>Applicable Licenses</h3> + + <p> + Unless otherwise indicated, all Content made available by the Eclipse + Foundation is provided to you under the terms and conditions of the + Eclipse Public License Version 2.0 ("EPL"). A copy of the + EPL is provided with this Content and is also available at <a + href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>. + For purposes of the EPL, "Program" will mean the Content. + </p> + + <p>Content includes, but is not limited to, source code, object + code, documentation and other files maintained in the Eclipse + Foundation source code repository ("Repository") in software + modules ("Modules") and made available as downloadable + archives ("Downloads").</p> + + <ul> + <li>Content may be structured and packaged into modules to + facilitate delivering, extending, and upgrading the Content. Typical + modules may include plug-ins ("Plug-ins"), plug-in + fragments ("Fragments"), and features + ("Features").</li> + <li>Each Plug-in or Fragment may be packaged as a sub-directory + or JAR (Java™ ARchive) in a directory named + "plugins".</li> + <li>A Feature is a bundle of one or more Plug-ins and/or + Fragments and associated material. Each Feature may be packaged as a + sub-directory in a directory named "features". Within a + Feature, files named "feature.xml" may contain a list of + the names and version numbers of the Plug-ins and/or Fragments + associated with that Feature.</li> + <li>Features may also include other Features ("Included + Features"). Within a Feature, files named + "feature.xml" may contain a list of the names and version + numbers of Included Features.</li> + </ul> + + <p>The terms and conditions governing Plug-ins and Fragments should + be contained in files named "about.html" + ("Abouts"). The terms and conditions governing Features and + Included Features should be contained in files named + "license.html" ("Feature Licenses"). Abouts and + Feature Licenses may be located in any directory of a Download or + Module including, but not limited to the following locations:</p> + + <ul> + <li>The top-level (root) directory</li> + <li>Plug-in and Fragment directories</li> + <li>Inside Plug-ins and Fragments packaged as JARs</li> + <li>Sub-directories of the directory named "src" of + certain Plug-ins</li> + <li>Feature directories</li> + </ul> + + <p>Note: if a Feature made available by the Eclipse Foundation is + installed using the Provisioning Technology (as defined below), you + must agree to a license ("Feature Update License") during + the installation process. If the Feature contains Included Features, + the Feature Update License should either provide you with the terms + and conditions governing the Included Features or inform you where you + can locate them. Feature Update Licenses may be found in the + "license" property of files named + "feature.properties" found within a Feature. Such Abouts, + Feature Licenses, and Feature Update Licenses contain the terms and + conditions (or references to such terms and conditions) that govern + your use of the associated Content in that directory.</p> + + <p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY + REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND + CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT + ARE NOT LIMITED TO):</p> + + <ul> + <li>Eclipse Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>) + </li> + <li>Eclipse Distribution License Version 1.0 (available at <a + href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>) + </li> + <li>Common Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>) + </li> + <li>Apache Software License 1.1 (available at <a + href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>) + </li> + <li>Apache Software License 2.0 (available at <a + href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>) + </li> + <li>Mozilla Public License Version 1.1 (available at <a + href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>) + </li> + </ul> + + <p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND + CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, + or Feature Update License is provided, please contact the Eclipse + Foundation to determine what terms and conditions govern that + particular Content.</p> + + + <h3>Use of Provisioning Technology</h3> + + <p> + The Eclipse Foundation makes available provisioning software, examples + of which include, but are not limited to, p2 and the Eclipse Update + Manager ("Provisioning Technology") for the purpose of + allowing users to install software, documentation, information and/or + other materials (collectively "Installable Software"). This + capability is provided with the intent of allowing such users to + install, extend and update Eclipse-based products. Information about + packaging Installable Software is available at <a + href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a> + ("Specification"). + </p> + + <p>You may use Provisioning Technology to allow other parties to + install Installable Software. You shall be responsible for enabling + the applicable license agreements relating to the Installable Software + to be presented to, and accepted by, the users of the Provisioning + Technology in accordance with the Specification. By using Provisioning + Technology in such a manner and making it available in accordance with + the Specification, you further acknowledge your agreement to, and the + acquisition of all necessary rights to permit the following:</p> + + <ol> + <li>A series of actions may occur ("Provisioning + Process") in which a user may execute the Provisioning + Technology on a machine ("Target Machine") with the intent + of installing, extending or updating the functionality of an + Eclipse-based product.</li> + <li>During the Provisioning Process, the Provisioning Technology + may cause third party Installable Software or a portion thereof to be + accessed and copied to the Target Machine.</li> + <li>Pursuant to the Specification, you will provide to the user + the terms and conditions that govern the use of the Installable + Software ("Installable Software Agreement") and such + Installable Software Agreement shall be accessed from the Target + Machine in accordance with the Specification. Such Installable + Software Agreement must inform the user of the terms and conditions + that govern the Installable Software and must solicit acceptance by + the end user in the manner prescribed in such Installable Software + Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the Installable + Software.</li> + </ol> + + <h3>Cryptography</h3> + + <p>Content may contain encryption software. The country in which + you are currently may have restrictions on the import, possession, and + use, and/or re-export to another country, of encryption software. + BEFORE using any encryption software, please check the country's laws, + regulations and policies concerning the import, possession, or use, + and re-export of encryption software, to see if this is permitted.</p> + + <p> + <small>Java and all Java-based trademarks are trademarks of + Oracle Corporation in the United States, other countries, or both.</small> + </p> +</body> +</html>
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/.gitignore b/org.eclipse.osbp.fork.xtext.codebuff.feature/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/.gitignore
@@ -0,0 +1 @@ +/target/
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/.project b/org.eclipse.osbp.fork.xtext.codebuff.feature/.project new file mode 100644 index 0000000..6dc0808 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/.project
@@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.osbp.fork.xtext.codebuff.feature</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.FeatureBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.sonarlint.eclipse.core.sonarlintBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.pde.FeatureNature</nature> + </natures> +</projectDescription>
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.core.resources.prefs b/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/<project>=UTF-8
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.m2e.core.prefs b/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.xtend.core.Xtend.prefs b/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.xtend.core.Xtend.prefs new file mode 100644 index 0000000..0933f8c --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -0,0 +1,10 @@ +//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=src/test/generated-sources/xtend +eclipse.preferences.version=1 +is_project_specific=true +outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true +outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false +outlet.DEFAULT_OUTPUT.sourceFolder.emf-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.src-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.src.directory=xtend-gen +outlet.DEFAULT_OUTPUT.sourceFolder.xtend-gen.directory=xtend-gen +outlet.DEFAULT_OUTPUT.userOutputPerSourceFolder=true
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/LICENSE.txt b/org.eclipse.osbp.fork.xtext.codebuff.feature/LICENSE.txt new file mode 100644 index 0000000..fc5938d --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/LICENSE.txt
@@ -0,0 +1,140 @@ +Eclipse Foundation Software User Agreement + +November 22, 2017 + +Usage Of Content + +THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION +AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF +THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE +TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED +BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED +BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE +AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE +TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY +APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU +MAY NOT USE THE CONTENT. + +Applicable Licenses + +Unless otherwise indicated, all Content made available by the Eclipse Foundation +is provided to you under the terms and conditions of the Eclipse Public License +Version 2.0 ("EPL"). A copy of the EPL is provided with this Content and is also +available at http://www.eclipse.org/legal/epl-2.0. For purposes of the EPL, +"Program" will mean the Content. + +Content includes, but is not limited to, source code, object code, documentation +and other files maintained in the Eclipse Foundation source code repository +("Repository") in software modules ("Modules") and made available as +downloadable archives ("Downloads"). + +- Content may be structured and packaged into modules to facilitate + delivering, extending, and upgrading the Content. Typical modules may + include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and + features ("Features"). +- Each Plug-in or Fragment may be packaged as a sub-directory or JAR + (Java™ ARchive) in a directory named "plugins". +- A Feature is a bundle of one or more Plug-ins and/or Fragments and + associated material. Each Feature may be packaged as a sub-directory in a + directory named "features". Within a Feature, files named "feature.xml" may + contain a list of the names and version numbers of the Plug-ins and/or + Fragments associated with that Feature. +- Features may also include other Features ("Included Features"). Within a + Feature, files named "feature.xml" may contain a list of the names and + version numbers of Included Features. + +The terms and conditions governing Plug-ins and Fragments should be contained in +files named "about.html" ("Abouts"). The terms and conditions governing Features +and Included Features should be contained in files named "license.html" +("Feature Licenses"). Abouts and Feature Licenses may be located in any +directory of a Download or Module including, but not limited to the following +locations: + +- The top-level (root) directory +- Plug-in and Fragment directories +- Inside Plug-ins and Fragments packaged as JARs +- Sub-directories of the directory named "src" of certain Plug-ins +- Feature directories + +Note: if a Feature made available by the Eclipse Foundation is installed using +the Provisioning Technology (as defined below), you must agree to a license +("Feature Update License") during the installation process. If the Feature +contains Included Features, the Feature Update License should either provide you +with the terms and conditions governing the Included Features or inform you +where you can locate them. Feature Update Licenses may be found in the "license" +property of files named "feature.properties" found within a Feature. Such +Abouts, Feature Licenses, and Feature Update Licenses contain the terms and +conditions (or references to such terms and conditions) that govern your use of +the associated Content in that directory. + +THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL +OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE +OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO): + +- Eclipse Public License Version 1.0 (available at + http://www.eclipse.org/legal/epl-v10.html) +- Eclipse Distribution License Version 1.0 (available at + http://www.eclipse.org/licenses/edl-v1.0.html) +- Common Public License Version 1.0 (available at + http://www.eclipse.org/legal/cpl-v10.html) +- Apache Software License 1.1 (available at + http://www.apache.org/licenses/LICENSE) +- Apache Software License 2.0 (available at + http://www.apache.org/licenses/LICENSE-2.0) +- Mozilla Public License Version 1.1 (available at + http://www.mozilla.org/MPL/MPL-1.1.html) + +IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO +USE OF THE CONTENT. If no About, Feature License, or Feature Update License is +provided, please contact the Eclipse Foundation to determine what terms and +conditions govern that particular Content. + +Use of Provisioning Technology + +The Eclipse Foundation makes available provisioning software, examples of which +include, but are not limited to, p2 and the Eclipse Update Manager +("Provisioning Technology") for the purpose of allowing users to install +software, documentation, information and/or other materials (collectively +"Installable Software"). This capability is provided with the intent of allowing +such users to install, extend and update Eclipse-based products. Information +about packaging Installable Software is available at +http://eclipse.org/equinox/p2/repository_packaging.html ("Specification"). + +You may use Provisioning Technology to allow other parties to install +Installable Software. You shall be responsible for enabling the applicable +license agreements relating to the Installable Software to be presented to, and +accepted by, the users of the Provisioning Technology in accordance with the +Specification. By using Provisioning Technology in such a manner and making it +available in accordance with the Specification, you further acknowledge your +agreement to, and the acquisition of all necessary rights to permit the +following: + +1. A series of actions may occur ("Provisioning Process") in which a user may + execute the Provisioning Technology on a machine ("Target Machine") with the + intent of installing, extending or updating the functionality of an + Eclipse-based product. +2. During the Provisioning Process, the Provisioning Technology may cause third + party Installable Software or a portion thereof to be accessed and copied to + the Target Machine. +3. Pursuant to the Specification, you will provide to the user the terms and + conditions that govern the use of the Installable Software ("Installable + Software Agreement") and such Installable Software Agreement shall be + accessed from the Target Machine in accordance with the Specification. Such + Installable Software Agreement must inform the user of the terms and + conditions that govern the Installable Software and must solicit acceptance + by the end user in the manner prescribed in such Installable + Software Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the + Installable Software. + +Cryptography + +Content may contain encryption software. The country in which you are currently +may have restrictions on the import, possession, and use, and/or re-export to +another country, of encryption software. BEFORE using any encryption software, +please check the country's laws, regulations and policies concerning the import, +possession, or use, and re-export of encryption software, to see if this is +permitted. + +Java and all Java-based trademarks are trademarks of Oracle Corporation in the +United States, other countries, or both.
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/build.properties b/org.eclipse.osbp.fork.xtext.codebuff.feature/build.properties new file mode 100644 index 0000000..bee2254 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/build.properties
@@ -0,0 +1,10 @@ +bin.includes = feature.xml,\ + feature.properties,\ + notice.html,\ + license.html,\ + LICENSE.txt,\ + epl-2.0.html +src.includes = license.html,\ + LICENSE.txt,\ + notice.html,\ + epl-2.0.html
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/epl-2.0.html b/org.eclipse.osbp.fork.xtext.codebuff.feature/epl-2.0.html new file mode 100644 index 0000000..637a181 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/epl-2.0.html
@@ -0,0 +1,300 @@ +<!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" xml:lang="en" lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>Eclipse Public License - Version 2.0</title> + <style type="text/css"> + body { + margin: 1.5em 3em; + } + h1{ + font-size:1.5em; + } + h2{ + font-size:1em; + margin-bottom:0.5em; + margin-top:1em; + } + p { + margin-top: 0.5em; + margin-bottom: 0.5em; + } + ul, ol{ + list-style-type:none; + } + </style> + </head> + <body> + <h1>Eclipse Public License - v 2.0</h1> + <p>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. + </p> + <h2 id="definitions">1. DEFINITIONS</h2> + <p>“Contribution” means:</p> + <ul> + <li>a) in the case of the initial Contributor, the initial content + Distributed under this Agreement, and + </li> + <li> + b) in the case of each subsequent Contributor: + <ul> + <li>i) changes to the Program, and</li> + <li>ii) additions to the Program;</li> + </ul> + 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 changes or additions to the Program that + are not Modified Works. + </li> + </ul> + <p>“Contributor” means any person or entity that Distributes the Program.</p> + <p>“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. + </p> + <p>“Program” means the Contributions Distributed in accordance with this + Agreement. + </p> + <p>“Recipient” means anyone who receives the Program under this Agreement + or any Secondary License (as applicable), including Contributors. + </p> + <p>“Derivative Works” shall mean any work, whether in Source Code or other + form, that is based on (or derived from) the Program and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. + </p> + <p>“Modified Works” shall mean any work in Source Code or other form that + results from an addition to, deletion from, or modification of the + contents of the Program, including, for purposes of clarity any new file + in Source Code form that contains any contents of the Program. Modified + Works shall not include works that contain only declarations, interfaces, + types, classes, structures, or files of the Program solely in each case + in order to link to, bind by name, or subclass the Program or Modified + Works thereof. + </p> + <p>“Distribute” means the acts of a) distributing or b) making available + in any manner that enables the transfer of a copy. + </p> + <p>“Source Code” means the form of a Program preferred for making + modifications, including but not limited to software source code, + documentation source, and configuration files. + </p> + <p>“Secondary License” means either the GNU General Public License, + Version 2.0, or any later versions of that license, including any + exceptions or additional permissions as identified by the initial + Contributor. + </p> + <h2 id="grant-of-rights">2. GRANT OF RIGHTS</h2> + <ul> + <li>a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free copyright + license to reproduce, prepare Derivative Works of, publicly display, + publicly perform, Distribute and sublicense the Contribution of such + Contributor, if any, and such Derivative Works. + </li> + <li>b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, 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 or other 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. + </li> + <li>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. + </li> + <li>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. + </li> + <li>e) Notwithstanding the terms of any Secondary License, no Contributor + makes additional grants to any Recipient (other than those set forth + in this Agreement) as a result of such Recipient's receipt of the + Program under the terms of a Secondary License (if permitted under + the terms of Section 3). + </li> + </ul> + <h2 id="requirements">3. REQUIREMENTS</h2> + <p>3.1 If a Contributor Distributes the Program in any form, then:</p> + <ul> + <li>a) the Program must also be made available as Source Code, in + accordance with section 3.2, and the Contributor must accompany + the Program with a statement that the Source Code for the Program + is available under this Agreement, and informs Recipients how to + obtain it in a reasonable manner on or through a medium customarily + used for software exchange; and + </li> + <li> + b) the Contributor may Distribute the Program under a license + different than this Agreement, provided that such license: + <ul> + <li>i) effectively disclaims on behalf of all other 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; + </li> + <li>ii) effectively excludes on behalf of all other Contributors all + liability for damages, including direct, indirect, special, incidental + and consequential damages, such as lost profits; + </li> + <li>iii) does not attempt to limit or alter the recipients' rights in the + Source Code under section 3.2; and + </li> + <li>iv) requires any subsequent distribution of the Program by any party + to be under a license that satisfies the requirements of this section 3. + </li> + </ul> + </li> + </ul> + <p>3.2 When the Program is Distributed as Source Code:</p> + <ul> + <li>a) it must be made available under this Agreement, or if the Program (i) + is combined with other material in a separate file or files made available + under a Secondary License, and (ii) the initial Contributor attached to + the Source Code the notice described in Exhibit A of this Agreement, + then the Program may be made available under the terms of such + Secondary Licenses, and + </li> + <li>b) a copy of this Agreement must be included with each copy of the Program.</li> + </ul> + <p>3.3 Contributors may not remove or alter any copyright, patent, trademark, + attribution notices, disclaimers of warranty, or limitations of liability + (‘notices’) contained within the Program from any copy of the Program which + they Distribute, provided that Contributors may add their own appropriate + notices. + </p> + <h2 id="commercial-distribution">4. COMMERCIAL DISTRIBUTION</h2> + <p>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. + </p> + <p>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. + </p> + <h2 id="warranty">5. NO WARRANTY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="disclaimer">6. DISCLAIMER OF LIABILITY</h2> + <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED + BY APPLICABLE LAW, 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. + </p> + <h2 id="general">7. GENERAL</h2> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. + </p> + <p>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. Nothing in this Agreement is intended + to be enforceable by any entity that is not a Contributor or Recipient. + No third-party beneficiary rights are created under this Agreement. + </p> + <h2 id="exhibit-a">Exhibit A – Form of Secondary Licenses Notice</h2> + <p>“This Source Code may also be made available under the following + Secondary Licenses when the conditions for such availability set forth + in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), + version(s), and exceptions or additional permissions here}.” + </p> + <blockquote> + <p>Simply including a copy of this Agreement, including this Exhibit A + is not sufficient to license the Source Code under Secondary Licenses. + </p> + <p>If it is not possible or desirable to put the notice in a particular file, + then You may include the notice in a location (such as a LICENSE file in a + relevant directory) where a recipient would be likely to look for + such a notice. + </p> + <p>You may add additional accurate notices of copyright ownership.</p> + </blockquote> + </body> +</html> \ No newline at end of file
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/feature.properties b/org.eclipse.osbp.fork.xtext.codebuff.feature/feature.properties new file mode 100644 index 0000000..f379299 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/feature.properties
@@ -0,0 +1,196 @@ +#======================================================================= +# Copyright (c) 2019 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Christophe Loetz (Loetz GmbH&Co.KG) - Initial implementation API and implementation +#======================================================================= +# feature.properties +# contains externalized strings for feature.xml +# "%foo" in feature.xml corresponds to the key "foo" in this file +# java.io.Properties file (ISO 8859-1 with "\" escapes) +# This file should be translated. + +# "featureName" property - name of the feature +featureName =OSBP org.eclipse.osbp.fork.xtext.codebuff + +# "providerName" property - name of the company that provides the feature +providerName=Eclipse OSBP + +# "description" property - description of the feature +description=This feature provides the OSBP fork of Holger Schills xtext.codebuff https://github.com/holgerschill/xtextCodebuff \n\ +\n\ +CQ: https://dev.eclipse.org/ipzilla/show_bug.cgi?id=19667 \n + +# "updateSiteName" property - label for the update site +updateSiteName= + +# "copyright" property - text of the "Feature Update Copyright" +copyright=\ +Copyright (c) 2009,2019 itemis AG (http://www.itemis.eu), Loetz GmbH&Co.KG (69115 Heidelberg, Germany) and others.\n\ +All rights reserved. This program and the accompanying materials\n\ +are made available under the terms of the Eclipse Public License 2.0\n\ +which accompanies this distribution, and is available at\n\ +https://www.eclipse.org/legal/epl-2.0/\n\ +\n\ +SPDX-License-Identifier: EPL-2.0\n\ +\n\ +Contributors:\n\ +Holger Schill (itemis AG) - Initial implementation API and implementation\n\ +Loetz GmbH&Co.KG - Adaptions to OSBP project\n\ + +################ end of copyright property #################################### + +# "licenseURL" property - URL of the "Feature License" +# do not translate value - just change to point to a locale-specific HTML page +licenseURL=license.html + +# "license" property - text of the "Feature Update License" +# should be plain text version of license agreement pointed to be "licenseURL" +license=\ +Eclipse Foundation Software User Agreement\n\ +\n\ +November 22, 2017\n\ +\n\ +Usage Of Content\n\ +\n\ +THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION\n\ +AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF\n\ +THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE\n\ +TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\ +BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED\n\ +BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE\n\ +AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\ +TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY\n\ +APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU\n\ +MAY NOT USE THE CONTENT.\n\ +\n\ +Applicable Licenses\n\ +\n\ +Unless otherwise indicated, all Content made available by the Eclipse Foundation\n\ +is provided to you under the terms and conditions of the Eclipse Public License\n\ +Version 2.0 ("EPL"). A copy of the EPL is provided with this Content and is also\n\ +available at http://www.eclipse.org/legal/epl-2.0. For purposes of the EPL,\n\ +"Program" will mean the Content.\n\ +\n\ +Content includes, but is not limited to, source code, object code, documentation\n\ +and other files maintained in the Eclipse Foundation source code repository\n\ +("Repository") in software modules ("Modules") and made available as\n\ +downloadable archives ("Downloads").\n\ +\n\ +- Content may be structured and packaged into modules to facilitate\n\ + delivering, extending, and upgrading the Content. Typical modules may\n\ + include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and\n\ + features ("Features").\n\ +- Each Plug-in or Fragment may be packaged as a sub-directory or JAR\n\ + (Javaâ„¢ ARchive) in a directory named "plugins".\n\ +- A Feature is a bundle of one or more Plug-ins and/or Fragments and\n\ + associated material. Each Feature may be packaged as a sub-directory in a\n\ + directory named "features". Within a Feature, files named "feature.xml" may\n\ + contain a list of the names and version numbers of the Plug-ins and/or\n\ + Fragments associated with that Feature.\n\ +- Features may also include other Features ("Included Features"). Within a\n\ + Feature, files named "feature.xml" may contain a list of the names and\n\ + version numbers of Included Features.\n\ +\n\ +The terms and conditions governing Plug-ins and Fragments should be contained in\n\ +files named "about.html" ("Abouts"). The terms and conditions governing Features\n\ +and Included Features should be contained in files named "license.html"\n\ +("Feature Licenses"). Abouts and Feature Licenses may be located in any\n\ +directory of a Download or Module including, but not limited to the following\n\ +locations:\n\ +\n\ +- The top-level (root) directory\n\ +- Plug-in and Fragment directories\n\ +- Inside Plug-ins and Fragments packaged as JARs\n\ +- Sub-directories of the directory named "src" of certain Plug-ins\n\ +- Feature directories\n\ +\n\ +Note: if a Feature made available by the Eclipse Foundation is installed using\n\ +the Provisioning Technology (as defined below), you must agree to a license\n\ +("Feature Update License") during the installation process. If the Feature\n\ +contains Included Features, the Feature Update License should either provide you\n\ +with the terms and conditions governing the Included Features or inform you\n\ +where you can locate them. Feature Update Licenses may be found in the "license"\n\ +property of files named "feature.properties" found within a Feature. Such\n\ +Abouts, Feature Licenses, and Feature Update Licenses contain the terms and\n\ +conditions (or references to such terms and conditions) that govern your use of\n\ +the associated Content in that directory.\n\ +\n\ +THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL\n\ +OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE\n\ +OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\ +\n\ +- Eclipse Public License Version 1.0 (available at\n\ + http://www.eclipse.org/legal/epl-v10.html)\n\ +- Eclipse Distribution License Version 1.0 (available at\n\ + http://www.eclipse.org/licenses/edl-v1.0.html)\n\ +- Common Public License Version 1.0 (available at\n\ + http://www.eclipse.org/legal/cpl-v10.html)\n\ +- Apache Software License 1.1 (available at\n\ + http://www.apache.org/licenses/LICENSE)\n\ +- Apache Software License 2.0 (available at\n\ + http://www.apache.org/licenses/LICENSE-2.0)\n\ +- Mozilla Public License Version 1.1 (available at\n\ + http://www.mozilla.org/MPL/MPL-1.1.html)\n\ +\n\ +IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO\n\ +USE OF THE CONTENT. If no About, Feature License, or Feature Update License is\n\ +provided, please contact the Eclipse Foundation to determine what terms and\n\ +conditions govern that particular Content.\n\ +\n\ +Use of Provisioning Technology\n\ +\n\ +The Eclipse Foundation makes available provisioning software, examples of which\n\ +include, but are not limited to, p2 and the Eclipse Update Manager\n\ +("Provisioning Technology") for the purpose of allowing users to install\n\ +software, documentation, information and/or other materials (collectively\n\ +"Installable Software"). This capability is provided with the intent of allowing\n\ +such users to install, extend and update Eclipse-based products. Information\n\ +about packaging Installable Software is available at\n\ +http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\ +\n\ +You may use Provisioning Technology to allow other parties to install\n\ +Installable Software. You shall be responsible for enabling the applicable\n\ +license agreements relating to the Installable Software to be presented to, and\n\ +accepted by, the users of the Provisioning Technology in accordance with the\n\ +Specification. By using Provisioning Technology in such a manner and making it\n\ +available in accordance with the Specification, you further acknowledge your\n\ +agreement to, and the acquisition of all necessary rights to permit the\n\ +following:\n\ +\n\ +1. A series of actions may occur ("Provisioning Process") in which a user may\n\ + execute the Provisioning Technology on a machine ("Target Machine") with the\n\ + intent of installing, extending or updating the functionality of an\n\ + Eclipse-based product.\n\ +2. During the Provisioning Process, the Provisioning Technology may cause third\n\ + party Installable Software or a portion thereof to be accessed and copied to\n\ + the Target Machine.\n\ +3. Pursuant to the Specification, you will provide to the user the terms and\n\ + conditions that govern the use of the Installable Software ("Installable\n\ + Software Agreement") and such Installable Software Agreement shall be\n\ + accessed from the Target Machine in accordance with the Specification. Such\n\ + Installable Software Agreement must inform the user of the terms and\n\ + conditions that govern the Installable Software and must solicit acceptance\n\ + by the end user in the manner prescribed in such Installable\n\ + Software Agreement. Upon such indication of agreement by the user, the\n\ + provisioning Technology will complete installation of the\n\ + Installable Software.\n\ +\n\ +Cryptography\n\ +\n\ +Content may contain encryption software. The country in which you are currently\n\ +may have restrictions on the import, possession, and use, and/or re-export to\n\ +another country, of encryption software. BEFORE using any encryption software,\n\ +please check the country's laws, regulations and policies concerning the import,\n\ +possession, or use, and re-export of encryption software, to see if this is\n\ +permitted.\n\ +\n\ +Java and all Java-based trademarks are trademarks of Oracle Corporation in the\n\ +United States, other countries, or both.\n +########### end of license property ##########################################
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/feature.xml b/org.eclipse.osbp.fork.xtext.codebuff.feature/feature.xml new file mode 100644 index 0000000..09ca588 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/feature.xml
@@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<feature + id="org.eclipse.osbp.fork.xtext.codebuff.feature" + label="%featureName" + version="0.9.0.qualifier" + provider-name="%providerName"> + + <description> + %description + </description> + + <copyright> + %copyright + </copyright> + + <license url="%licenseURL"> + %license + </license> + + <plugin + id="com.itemis.xtext.codebuff" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="com.itemis.xtext.codebuff.ui" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + + +</feature> \ No newline at end of file
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/license.html b/org.eclipse.osbp.fork.xtext.codebuff.feature/license.html new file mode 100644 index 0000000..008b801 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/license.html
@@ -0,0 +1,189 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<!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>Eclipse Foundation Software User Agreement</title> +</head> + +<body lang="EN-US"> + <h2>Eclipse Foundation Software User Agreement</h2> + <p>November 22, 2017</p> + + <h3>Usage Of Content</h3> + + <p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, + INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS + (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY + THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND + CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS + GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY + APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED + BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS + AGREEMENT AND THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE + AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT + USE THE CONTENT.</p> + + <h3>Applicable Licenses</h3> + + <p> + Unless otherwise indicated, all Content made available by the Eclipse + Foundation is provided to you under the terms and conditions of the + Eclipse Public License Version 2.0 ("EPL"). A copy of the + EPL is provided with this Content and is also available at <a + href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>. + For purposes of the EPL, "Program" will mean the Content. + </p> + + <p>Content includes, but is not limited to, source code, object + code, documentation and other files maintained in the Eclipse + Foundation source code repository ("Repository") in software + modules ("Modules") and made available as downloadable + archives ("Downloads").</p> + + <ul> + <li>Content may be structured and packaged into modules to + facilitate delivering, extending, and upgrading the Content. Typical + modules may include plug-ins ("Plug-ins"), plug-in + fragments ("Fragments"), and features + ("Features").</li> + <li>Each Plug-in or Fragment may be packaged as a sub-directory + or JAR (Java™ ARchive) in a directory named + "plugins".</li> + <li>A Feature is a bundle of one or more Plug-ins and/or + Fragments and associated material. Each Feature may be packaged as a + sub-directory in a directory named "features". Within a + Feature, files named "feature.xml" may contain a list of + the names and version numbers of the Plug-ins and/or Fragments + associated with that Feature.</li> + <li>Features may also include other Features ("Included + Features"). Within a Feature, files named + "feature.xml" may contain a list of the names and version + numbers of Included Features.</li> + </ul> + + <p>The terms and conditions governing Plug-ins and Fragments should + be contained in files named "about.html" + ("Abouts"). The terms and conditions governing Features and + Included Features should be contained in files named + "license.html" ("Feature Licenses"). Abouts and + Feature Licenses may be located in any directory of a Download or + Module including, but not limited to the following locations:</p> + + <ul> + <li>The top-level (root) directory</li> + <li>Plug-in and Fragment directories</li> + <li>Inside Plug-ins and Fragments packaged as JARs</li> + <li>Sub-directories of the directory named "src" of + certain Plug-ins</li> + <li>Feature directories</li> + </ul> + + <p>Note: if a Feature made available by the Eclipse Foundation is + installed using the Provisioning Technology (as defined below), you + must agree to a license ("Feature Update License") during + the installation process. If the Feature contains Included Features, + the Feature Update License should either provide you with the terms + and conditions governing the Included Features or inform you where you + can locate them. Feature Update Licenses may be found in the + "license" property of files named + "feature.properties" found within a Feature. Such Abouts, + Feature Licenses, and Feature Update Licenses contain the terms and + conditions (or references to such terms and conditions) that govern + your use of the associated Content in that directory.</p> + + <p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY + REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND + CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT + ARE NOT LIMITED TO):</p> + + <ul> + <li>Eclipse Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>) + </li> + <li>Eclipse Distribution License Version 1.0 (available at <a + href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>) + </li> + <li>Common Public License Version 1.0 (available at <a + href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>) + </li> + <li>Apache Software License 1.1 (available at <a + href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>) + </li> + <li>Apache Software License 2.0 (available at <a + href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>) + </li> + <li>Mozilla Public License Version 1.1 (available at <a + href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>) + </li> + </ul> + + <p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND + CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, + or Feature Update License is provided, please contact the Eclipse + Foundation to determine what terms and conditions govern that + particular Content.</p> + + + <h3>Use of Provisioning Technology</h3> + + <p> + The Eclipse Foundation makes available provisioning software, examples + of which include, but are not limited to, p2 and the Eclipse Update + Manager ("Provisioning Technology") for the purpose of + allowing users to install software, documentation, information and/or + other materials (collectively "Installable Software"). This + capability is provided with the intent of allowing such users to + install, extend and update Eclipse-based products. Information about + packaging Installable Software is available at <a + href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a> + ("Specification"). + </p> + + <p>You may use Provisioning Technology to allow other parties to + install Installable Software. You shall be responsible for enabling + the applicable license agreements relating to the Installable Software + to be presented to, and accepted by, the users of the Provisioning + Technology in accordance with the Specification. By using Provisioning + Technology in such a manner and making it available in accordance with + the Specification, you further acknowledge your agreement to, and the + acquisition of all necessary rights to permit the following:</p> + + <ol> + <li>A series of actions may occur ("Provisioning + Process") in which a user may execute the Provisioning + Technology on a machine ("Target Machine") with the intent + of installing, extending or updating the functionality of an + Eclipse-based product.</li> + <li>During the Provisioning Process, the Provisioning Technology + may cause third party Installable Software or a portion thereof to be + accessed and copied to the Target Machine.</li> + <li>Pursuant to the Specification, you will provide to the user + the terms and conditions that govern the use of the Installable + Software ("Installable Software Agreement") and such + Installable Software Agreement shall be accessed from the Target + Machine in accordance with the Specification. Such Installable + Software Agreement must inform the user of the terms and conditions + that govern the Installable Software and must solicit acceptance by + the end user in the manner prescribed in such Installable Software + Agreement. Upon such indication of agreement by the user, the + provisioning Technology will complete installation of the Installable + Software.</li> + </ol> + + <h3>Cryptography</h3> + + <p>Content may contain encryption software. The country in which + you are currently may have restrictions on the import, possession, and + use, and/or re-export to another country, of encryption software. + BEFORE using any encryption software, please check the country's laws, + regulations and policies concerning the import, possession, or use, + and re-export of encryption software, to see if this is permitted.</p> + + <p> + <small>Java and all Java-based trademarks are trademarks of + Oracle Corporation in the United States, other countries, or both.</small> + </p> +</body> +</html>
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/notice.html b/org.eclipse.osbp.fork.xtext.codebuff.feature/notice.html new file mode 100644 index 0000000..c3d34c3 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/notice.html
@@ -0,0 +1,107 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<!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>Eclipse Foundation Software User Agreement</title> +</head> + +<body lang="EN-US"> +<h2>Eclipse Foundation Software User Agreement</h2> +<p>April 9, 2014</p> + +<h3>Usage Of Content</h3> + +<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS + (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND + CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE + OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR + NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND + CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p> + +<h3>Applicable Licenses</h3> + +<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0 + ("EPL"). A copy of the EPL is provided with this Content and is also 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>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code + repository ("Repository") in software modules ("Modules") and made available as downloadable archives ("Downloads").</p> + +<ul> + <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and features ("Features").</li> + <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java™ ARchive) in a directory named "plugins".</li> + <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named "features". Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of the Plug-ins + and/or Fragments associated with that Feature.</li> + <li>Features may also include other Features ("Included Features"). Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of Included Features.</li> +</ul> + +<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named "about.html" ("Abouts"). The terms and conditions governing Features and +Included Features should be contained in files named "license.html" ("Feature Licenses"). Abouts and Feature Licenses may be located in any directory of a Download or Module +including, but not limited to the following locations:</p> + +<ul> + <li>The top-level (root) directory</li> + <li>Plug-in and Fragment directories</li> + <li>Inside Plug-ins and Fragments packaged as JARs</li> + <li>Sub-directories of the directory named "src" of certain Plug-ins</li> + <li>Feature directories</li> +</ul> + +<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license ("Feature Update License") during the +installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or +inform you where you can locate them. Feature Update Licenses may be found in the "license" property of files named "feature.properties" found within a Feature. +Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in +that directory.</p> + +<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE +OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p> + +<ul> + <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li> + <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li> + <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li> + <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li> + <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li> +</ul> + +<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please +contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p> + + +<h3>Use of Provisioning Technology</h3> + +<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse + Update Manager ("Provisioning Technology") for the purpose of allowing users to install software, documentation, information and/or + other materials (collectively "Installable Software"). This capability is provided with the intent of allowing such users to + install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a + href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a> + ("Specification").</p> + +<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the + applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology + in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the + Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p> + +<ol> + <li>A series of actions may occur ("Provisioning Process") in which a user may execute the Provisioning Technology + on a machine ("Target Machine") with the intent of installing, extending or updating the functionality of an Eclipse-based + product.</li> + <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be + accessed and copied to the Target Machine.</li> + <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable + Software ("Installable Software Agreement") and such Installable Software Agreement shall be accessed from the Target + Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern + the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such + indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li> +</ol> + +<h3>Cryptography</h3> + +<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to + another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import, + possession, or use, and re-export of encryption software, to see if this is permitted.</p> + +<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p> +</body> +</html>
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/pom.xml b/org.eclipse.osbp.fork.xtext.codebuff.feature/pom.xml new file mode 100644 index 0000000..132b310 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/pom.xml
@@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +#======================================================================= +# Copyright (c) 2019 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Christophe Loetz (Loetz GmbH&Co.KG) - Initial implementation API and implementation +#======================================================================= +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.eclipse.osbp.fork.xtext.codebuff</groupId> + <artifactId>org.eclipse.osbp.fork.xtext.codebuff.aggregator</artifactId> + <version>0.9.0-SNAPSHOT</version> + </parent> + + <artifactId>org.eclipse.osbp.fork.xtext.codebuff.feature</artifactId> + <packaging>eclipse-feature</packaging> + + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho.extras</groupId> + <artifactId>tycho-source-feature-plugin</artifactId> + <version>${tychoExtrasVersion}</version> + <executions> + <execution> + <id>source-feature</id> + <phase>package</phase> + <goals> + <goal>source-feature</goal> + </goals> + </execution> + </executions> + <configuration> + <labelSuffix> (source)</labelSuffix> + </configuration> + </plugin> + <plugin> + <!-- workaround while bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=398250 + is not fixed --> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-p2-plugin</artifactId> + <version>${tycho-version}</version> + <executions> + <execution> + <id>attached-p2-metadata</id> + <phase>package</phase> + <goals> + <goal>p2-metadata</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + <executions> + <execution> + <id>javadoc-jar</id> + <phase>package</phase> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + + +</project>
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/src/main/javadoc/README.txt b/org.eclipse.osbp.fork.xtext.codebuff.feature/src/main/javadoc/README.txt new file mode 100644 index 0000000..831da7e --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/src/main/javadoc/README.txt
@@ -0,0 +1 @@ +Resource folder for javadoc resources. \ No newline at end of file
diff --git a/org.eclipse.osbp.fork.xtext.codebuff.feature/src/overview.html b/org.eclipse.osbp.fork.xtext.codebuff.feature/src/overview.html new file mode 100644 index 0000000..9443bc9 --- /dev/null +++ b/org.eclipse.osbp.fork.xtext.codebuff.feature/src/overview.html
@@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html> +<head> + <title>OSBP fork.xtext.codebuff</title> +</head> +<body> +<p>The <strong>OSBP fork.xtext.codebuff</strong> provides bundles for the OSBP fork.xtext.codebuff functionality.</p> +</body> +</html>
diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..4f764c7 --- /dev/null +++ b/pom.xml
@@ -0,0 +1,114 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +#======================================================================= +# Copyright (c) 2019 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Christophe Loetz (Loetz GmbH&Co.KG) - Initial implementation API and implementation +#======================================================================= +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.eclipse.osbp.releng.maven</groupId> + <artifactId>org.eclipse.osbp.releng.maven.parent.tycho</artifactId> + <version>0.9.0-SNAPSHOT</version> + <relativePath/> + </parent> + + <!-- CQ: https://dev.eclipse.org/ipzilla/show_bug.cgi?id=19667 --> + <groupId>org.eclipse.osbp.fork.xtext.codebuff</groupId> + <artifactId>org.eclipse.osbp.fork.xtext.codebuff.aggregator</artifactId> + <version>0.9.0-SNAPSHOT</version> + <packaging>pom</packaging> + + <url>${osbp.site.repository.url}</url> + <scm> + <url>${osbp.scm.url}</url> + <connection>${osbp.scm.connection}</connection> + <developerConnection>${osbp.scm.connection.dev}</developerConnection> + <tag>HEAD</tag> + </scm> + <distributionManagement> + <site> + <id>gh-pages</id> + <name>OSBP GitHub Pages</name> + <url>${distribution.site.url}</url> + </site> + </distributionManagement> + + <repositories> + <repository> + <id>OSBP dependencies Internal P2</id> + <url>file:////${osbp.stage.p2.dependencies.target.dir.base}${file.separator}${osbp.build.branch}${file.separator}</url> + <layout>p2</layout> + </repository> + </repositories> + + <properties> + <osbp.gitrepo.name>${project.groupId}</osbp.gitrepo.name> + </properties> + + <modules> + <module>com.itemis.xtext.codebuff</module> + <module>com.itemis.xtext.codebuff.ui</module> + <module>org.eclipse.osbp.fork.xtext.codebuff.feature</module> + </modules> + + <build> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <skip>true</skip> + </configuration> + </plugin> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>target-platform-configuration</artifactId> + <version>${tycho-version}</version> + <configuration> + <resolver>p2</resolver> + <pomDependencies>consider</pomDependencies> + <environments> + <environment> + <os>win32</os> + <ws>win32</ws> + <arch>x86</arch> + </environment> + <environment> + <os>win32</os> + <ws>win32</ws> + <arch>x86_64</arch> + </environment> + <environment> + <os>linux</os> + <ws>gtk</ws> + <arch>x86</arch> + </environment> + <environment> + <os>linux</os> + <ws>gtk</ws> + <arch>x86_64</arch> + </environment> + <environment> + <os>macosx</os> + <ws>cocoa</ws> + <arch>x86_64</arch> + </environment> + </environments> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> +</project>