From c9a4039d74a6b50878aa4a833feda31a5f0da76f Mon Sep 17 00:00:00 2001 From: Sebastian Krings <sebastian@krin.gs> Date: Fri, 17 Oct 2014 17:03:28 +0200 Subject: [PATCH] parser version / bundle activation policy --- org.eventb.texteditor.parsers/.classpath | 8 +-- .../META-INF/MANIFEST.MF | 1 - .../build.properties | 9 ++- org.eventb.texteditor.ui/META-INF/MANIFEST.MF | 6 +- org.eventb.texttools/.classpath | 1 - org.eventb.texttools/META-INF/MANIFEST.MF | 11 +--- .../eventb/texttools/PersistenceHelper.java | 57 +++++++++++-------- 7 files changed, 47 insertions(+), 46 deletions(-) diff --git a/org.eventb.texteditor.parsers/.classpath b/org.eventb.texteditor.parsers/.classpath index da14bb5..eda273b 100644 --- a/org.eventb.texteditor.parsers/.classpath +++ b/org.eventb.texteditor.parsers/.classpath @@ -5,9 +5,9 @@ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> - <classpathentry kind="lib" path="lib/bparser-2.4.34-SNAPSHOT.jar"/> - <classpathentry kind="lib" path="lib/eventbstruct-2.4.34-SNAPSHOT.jar"/> - <classpathentry kind="lib" path="lib/parserbase-2.4.34-SNAPSHOT.jar"/> - <classpathentry kind="lib" path="lib/prologlib-2.4.34-SNAPSHOT.jar"/> + <classpathentry exported="true" kind="lib" path="lib/bparser-2.4.34-SNAPSHOT.jar"/> + <classpathentry exported="true" kind="lib" path="lib/eventbstruct-2.4.34-SNAPSHOT.jar"/> + <classpathentry exported="true" kind="lib" path="lib/parserbase-2.4.34-SNAPSHOT.jar"/> + <classpathentry exported="true" kind="lib" path="lib/prologlib-2.4.34-SNAPSHOT.jar"/> <classpathentry kind="output" path="bin"/> </classpath> diff --git a/org.eventb.texteditor.parsers/META-INF/MANIFEST.MF b/org.eventb.texteditor.parsers/META-INF/MANIFEST.MF index 078ce3e..3661e7b 100644 --- a/org.eventb.texteditor.parsers/META-INF/MANIFEST.MF +++ b/org.eventb.texteditor.parsers/META-INF/MANIFEST.MF @@ -5,7 +5,6 @@ Bundle-SymbolicName: org.eventb.texteditor.parsers Bundle-Version: 3.0.3.qualifier Bundle-Activator: org.eventb.texteditor.parsers.Activator Require-Bundle: org.eclipse.core.runtime -Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ClassPath: ., lib/bparser-2.4.34-SNAPSHOT.jar, diff --git a/org.eventb.texteditor.parsers/build.properties b/org.eventb.texteditor.parsers/build.properties index ab2f07a..4ff567f 100644 --- a/org.eventb.texteditor.parsers/build.properties +++ b/org.eventb.texteditor.parsers/build.properties @@ -1,11 +1,10 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - lib/,\ .,\ - lib/bparser-2.4.29-SNAPSHOT.jar,\ - lib/eventbstruct-2.4.29-SNAPSHOT.jar,\ + lib/bparser-2.4.34-SNAPSHOT.jar,\ + lib/eventbstruct-2.4.34-SNAPSHOT.jar,\ lib/guava-14.0.1.jar,\ lib/jsr305-1.3.9.jar,\ - lib/parserbase-2.4.29-SNAPSHOT.jar,\ - lib/prologlib-2.4.29-SNAPSHOT.jar + lib/parserbase-2.4.34-SNAPSHOT.jar,\ + lib/prologlib-2.4.34-SNAPSHOT.jar diff --git a/org.eventb.texteditor.ui/META-INF/MANIFEST.MF b/org.eventb.texteditor.ui/META-INF/MANIFEST.MF index c045513..00c2287 100644 --- a/org.eventb.texteditor.ui/META-INF/MANIFEST.MF +++ b/org.eventb.texteditor.ui/META-INF/MANIFEST.MF @@ -18,11 +18,9 @@ Require-Bundle: org.eventb.texttools;bundle-version="[2.0.0,3.1.0)";visibility:= org.eclipse.ui.workbench.texteditor, org.eventb.texteditor.parsers;bundle-version="1.0.0", org.eclipse.core.resources;bundle-version="3.8.1" -Bundle-ActivationPolicy: lazy -Bundle-RequiredExecutionEnvironment: J2SE-1.5 -Bundle-ClassPath: lib/commons-lang-2.4.jar, - . +Bundle-ClassPath: . Bundle-Vendor: Heinrich-Heine University Dusseldorf Export-Package: org.eventb.texteditor.ui, org.eventb.texteditor.ui.editor Import-Package: org.eclipse.ui.texteditor.link +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 diff --git a/org.eventb.texttools/.classpath b/org.eventb.texttools/.classpath index 7cf64e5..065ac06 100644 --- a/org.eventb.texttools/.classpath +++ b/org.eventb.texttools/.classpath @@ -3,6 +3,5 @@ <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> - <classpathentry kind="src" path="src_generated"/> <classpathentry kind="output" path="bin"/> </classpath> diff --git a/org.eventb.texttools/META-INF/MANIFEST.MF b/org.eventb.texttools/META-INF/MANIFEST.MF index 750e1a8..d82f8f1 100644 --- a/org.eventb.texttools/META-INF/MANIFEST.MF +++ b/org.eventb.texttools/META-INF/MANIFEST.MF @@ -13,9 +13,7 @@ Require-Bundle: org.eclipse.jface.text;bundle-version="[3.6.0,4.0.0)", org.eclipse.emf.compare.match;bundle-version="[1.2.2,2.0.0)", org.eclipse.core.resources;bundle-version="[3.8.1,4.0.0)", org.eclipse.emf.ecore, - org.eventb.texteditor.parsers;bundle-version="1.0.0" -Bundle-ActivationPolicy: lazy -Bundle-RequiredExecutionEnvironment: J2SE-1.5 + org.eventb.texteditor.parsers;bundle-version="3.0.3" Export-Package: org.eventb.texttools, org.eventb.texttools.formulas, org.eventb.texttools.merge, @@ -23,8 +21,5 @@ Export-Package: org.eventb.texttools, org.eventb.texttools.prettyprint, org.eventb.texttools.syntaxExtension Bundle-Vendor: Heinrich-Heine University Dusseldorf -Bundle-ClassPath: ., - lib/dependencies/prologlib-2.4.22-SNAPSHOT.jar, - lib/dependencies/parserbase-2.4.22-SNAPSHOT.jar, - lib/dependencies/jsr305-1.3.9.jar, - lib/dependencies/bparser-2.4.22-SNAPSHOT.jar +Bundle-ClassPath: . +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 diff --git a/org.eventb.texttools/src/org/eventb/texttools/PersistenceHelper.java b/org.eventb.texttools/src/org/eventb/texttools/PersistenceHelper.java index 9c88d7e..c341fd7 100644 --- a/org.eventb.texttools/src/org/eventb/texttools/PersistenceHelper.java +++ b/org.eventb.texttools/src/org/eventb/texttools/PersistenceHelper.java @@ -60,15 +60,18 @@ public class PersistenceHelper { * Try to set timestamp to the same as in the annotation. Setting on * both Resource and IResource to be save. */ - //final long textTimestamp = getTextTimestamp(resource); - // REMOVED WORKAROUND BELOW: a better fix is to not ignore attributes in EventBReferencesCheck + // final long textTimestamp = getTextTimestamp(resource); + // REMOVED WORKAROUND BELOW: a better fix is to not ignore + // attributes in EventBReferencesCheck // --- TODO: Workaround for save bug. The method getTextTimestamp - // --- returns in some cases -1 (no time annotation exists). I noticed - // --- that many different instances of the same resource exist. Some + // --- returns in some cases -1 (no time annotation exists). I + // noticed + // --- that many different instances of the same resource exist. + // Some // --- are annotated, the others not. long textTimestamp = getTextTimestamp(resource); -// if(textTimestamp == -1) -// textTimestamp = System.currentTimeMillis(); + // if(textTimestamp == -1) + // textTimestamp = System.currentTimeMillis(); resource.setTimeStamp(textTimestamp); getIResource(resource).setLocalTimeStamp(textTimestamp); } catch (final IOException e) { @@ -183,12 +186,13 @@ public class PersistenceHelper { // we should find a text representation in the EMF final String text = getTextAnnotation(resource); - - /* workaround for Bug #3305107 + /* + * workaround for Bug #3305107 * - * When a machine- or contextfile is renamed the lastmodified date does not change. - * Since isTextUptodate() compares timestamps only, it returns true for renamed files. - * */ + * When a machine- or contextfile is renamed the lastmodified date + * does not change. Since isTextUptodate() compares timestamps only, + * it returns true for renamed files. + */ boolean namesMatch = true; final EventBNamedCommentedComponentElement rootElement = getComponent(resource); if (rootElement != null) { @@ -198,17 +202,24 @@ public class PersistenceHelper { System.out.println(start); PParseUnit pParseUnit = start.getPParseUnit(); String parsedName = null; - if (pParseUnit instanceof AMachineParseUnit){ - parsedName = ((AMachineParseUnit)start.getPParseUnit()).getName().getText(); + if (pParseUnit instanceof AMachineParseUnit) { + parsedName = ((AMachineParseUnit) start.getPParseUnit()) + .getName().getText(); } - if (pParseUnit instanceof AContextParseUnit){ - parsedName = ((AContextParseUnit)start.getPParseUnit()).getName().getText(); + if (pParseUnit instanceof AContextParseUnit) { + parsedName = ((AContextParseUnit) start.getPParseUnit()) + .getName().getText(); } - - if (parsedName != null){ - if (!parsedName.equals(rootElement.getName())){ + + if (parsedName != null) { + if (!parsedName.equals(rootElement.getName())) { namesMatch = false; - System.err.println("Conflicting names of ParseUnit! Expected name: '" + rootElement.getName() + "' actual name: '" + parsedName + "'! Prettyprinting unit..."); + System.err + .println("Conflicting names of ParseUnit! Expected name: '" + + rootElement.getName() + + "' actual name: '" + + parsedName + + "'! Prettyprinting unit..."); } } } catch (BException e) { @@ -217,7 +228,7 @@ public class PersistenceHelper { } } /* End of woraround */ - + if (text != null && namesMatch) { return text; } @@ -320,10 +331,10 @@ public class PersistenceHelper { private static boolean isTextUptodate(final Resource resource) { final long textTimestamp = getTextTimestamp(resource); - if (true){ - //return false; + if (true) { + // return false; } - + try { final IResource file = getIResource(resource); // refresh to get latest timestamp -- GitLab