develop #22
| @@ -5,10 +5,7 @@ Bundle-SymbolicName: com.minres.scviewer.database.sqlite | ||||
| Bundle-Version: 1.0.0.qualifier | ||||
| Bundle-Vendor: MINRES Technologies GmbH | ||||
| Bundle-RequiredExecutionEnvironment: JavaSE-1.8 | ||||
| Require-Bundle: com.minres.scviewer.database;bundle-version="1.0.0", | ||||
|  org.eclipse.equinox.util;bundle-version="1.0.500", | ||||
|  org.eclipse.equinox.ds;bundle-version="1.4.200", | ||||
|  org.eclipse.osgi.services;bundle-version="3.4.0" | ||||
| Require-Bundle: com.minres.scviewer.database;bundle-version="1.0.0" | ||||
| Bundle-ClassPath: .,sqlite-jdbc-3.8.7.jar | ||||
| Service-Component: OSGI-INF/component.xml | ||||
| Bundle-ActivationPolicy: lazy | ||||
|   | ||||
| @@ -14,7 +14,7 @@ | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>tycho-surefire-plugin</artifactId> | ||||
| 				<version>0.23.1</version> | ||||
| 				<version>${tycho-version}</version> | ||||
| 				<configuration> | ||||
| <!-- 					<bundleStartLevel /> --> | ||||
| 					<dependencies> | ||||
|   | ||||
| @@ -1,2 +1,2 @@ | ||||
| eclipse.preferences.version=1 | ||||
| groovy.compiler.level=26 | ||||
| groovy.compiler.level=25 | ||||
|   | ||||
| @@ -2,12 +2,12 @@ Manifest-Version: 1.0 | ||||
| Bundle-ManifestVersion: 2 | ||||
| Bundle-Name: Textual transaction database | ||||
| Bundle-SymbolicName: com.minres.scviewer.database.text | ||||
| Bundle-Version: 2.0.0.qualifier | ||||
| Bundle-Version: 2.0.1.qualifier | ||||
| Bundle-Vendor: MINRES Technologies GmbH | ||||
| Bundle-RequiredExecutionEnvironment: JavaSE-1.8 | ||||
| Import-Package: org.osgi.framework;version="1.3.0" | ||||
| Require-Bundle: com.minres.scviewer.database;bundle-version="1.0.0", | ||||
|  org.codehaus.groovy;bundle-version="1.8.6", | ||||
| Require-Bundle: com.minres.scviewer.database, | ||||
|  org.codehaus.groovy;bundle-version="2.5.8", | ||||
|  org.eclipse.equinox.util;bundle-version="1.0.500", | ||||
|  org.eclipse.equinox.ds;bundle-version="1.4.200", | ||||
|  org.eclipse.osgi.services;bundle-version="3.4.0", | ||||
|   | ||||
| @@ -2,7 +2,7 @@ | ||||
| 	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> | ||||
| 	<artifactId>com.minres.scviewer.database.text</artifactId> | ||||
| 	<version>2.0.0-SNAPSHOT</version> | ||||
| 	<version>2.0.1-SNAPSHOT</version> | ||||
| 	<parent> | ||||
| 		<groupId>com.minres.scviewer</groupId> | ||||
| 		<artifactId>com.minres.scviewer.parent</artifactId> | ||||
| @@ -15,10 +15,13 @@ | ||||
| 		<plugins> | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>tycho-compiler-plugin</artifactId> | ||||
|         		<version>0.23.1</version> | ||||
| 				<artifactId>maven-compiler-plugin</artifactId> | ||||
| 				<version>3.8.0</version> | ||||
| 				<configuration> | ||||
| 					<compilerId>groovy-eclipse-compiler</compilerId> | ||||
| 			        <compilerArguments> | ||||
| 			            <indy/><!-- optional; supported by batch 2.4.12-04+ --> | ||||
| 			        </compilerArguments> | ||||
| 					<!-- set verbose to be true if you want lots of uninteresting messages --> | ||||
| 					<!-- <verbose>true</verbose> --> | ||||
| 					<source>1.7</source> | ||||
| @@ -34,8 +37,6 @@ | ||||
| 						<groupId>org.codehaus.groovy</groupId> | ||||
| 						<artifactId>groovy-eclipse-batch</artifactId> | ||||
| 						<version>${groovy-eclipse-batch-version}</version> | ||||
| 						<!-- or choose a different compiler version --> | ||||
| 						<!-- <version>2.1.8-01</version> --> | ||||
| 					</dependency> | ||||
| 				</dependencies> | ||||
| 			</plugin> | ||||
|   | ||||
| @@ -28,6 +28,7 @@ import com.minres.scviewer.database.IWaveform | ||||
| import com.minres.scviewer.database.IWaveformDb | ||||
| import com.minres.scviewer.database.IWaveformDbLoader | ||||
| import com.minres.scviewer.database.RelationType | ||||
| import com.minres.scviewer.database.DataType | ||||
|  | ||||
| public class TextDbLoader implements IWaveformDbLoader{ | ||||
|  | ||||
| @@ -80,6 +81,7 @@ public class TextDbLoader implements IWaveformDbLoader{ | ||||
| 				.allocateStartSize(64*1024*1024) | ||||
| 				.allocateIncrement(64*1024*1024) | ||||
| 				.make() | ||||
| 				// NPE here ---> | ||||
| 				parseInput(gzipped?new GZIPInputStream(new FileInputStream(file)):new FileInputStream(file)) | ||||
| 				calculateConcurrencyIndicees() | ||||
| 				return true | ||||
| @@ -87,6 +89,7 @@ public class TextDbLoader implements IWaveformDbLoader{ | ||||
| 		} catch(EOFException e) { | ||||
| 			return true; | ||||
| 		} catch(Exception e) { | ||||
| 			System.out.println("---->>> Exception caught while loading database. StackTrace following... "); | ||||
| 			e.printStackTrace() | ||||
| 		} | ||||
| 		return false; | ||||
| @@ -113,7 +116,7 @@ public class TextDbLoader implements IWaveformDbLoader{ | ||||
| 		} catch (IOException e) { | ||||
| 			return false; | ||||
| 		} finally { | ||||
| 			is.close() | ||||
| 			if(is!=null) is.close() | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| @@ -138,7 +141,7 @@ public class TextDbLoader implements IWaveformDbLoader{ | ||||
| 		BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8")); | ||||
| 		long lineCnt=0; | ||||
| 		reader.eachLine { line -> | ||||
| 			def tokens = line.split(/\s+/) | ||||
| 			def tokens = line.split(/\s+/) as ArrayList | ||||
| 			switch(tokens[0]){ | ||||
| 				case "scv_tr_stream": | ||||
| 				case "scv_tr_generator": | ||||
| @@ -185,7 +188,10 @@ public class TextDbLoader implements IWaveformDbLoader{ | ||||
| 					break | ||||
| 				case "tx_record_attribute"://matcher = line =~ /^tx_record_attribute\s+(\d+)\s+"([^"]+)"\s+(\S+)\s*=\s*(.+)$/ | ||||
| 					def id = Integer.parseInt(tokens[1]) | ||||
| 					transactionsById[id].attributes<<new TxAttribute(tokens[2][1..-2], DataType.valueOf(tokens[3]), AssociationType.RECORD, tokens[5..-1].join(' ')) | ||||
| 					def name = tokens[2][1..-2] | ||||
| 					def type = tokens[3] as DataType | ||||
| 					def remaining = tokens.size()>5?tokens[5..-1].join(' '):"" | ||||
| 					transactionsById[id].attributes<<new TxAttribute(name, type, AssociationType.RECORD, remaining) | ||||
| 					break | ||||
| 				case "a"://matcher = line =~ /^a\s+(.+)$/ | ||||
| 					if(endTransaction){ | ||||
| @@ -213,6 +219,26 @@ public class TextDbLoader implements IWaveformDbLoader{ | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	private def toDataType(String str){ | ||||
| 		switch (str) | ||||
| 		{ | ||||
| 			case "BOOLEAN": return DataType.                       BOOLEAN                       | ||||
| 			case "ENUMERATION": return DataType.                   ENUMERATION                   | ||||
| 			case "INTEGER": return DataType.                       INTEGER                       | ||||
| 			case "UNSIGNED": return DataType.                      UNSIGNED                      | ||||
| 			case "FLOATING_POINT_NUMBER": return DataType.         FLOATING_POINT_NUMBER         | ||||
| 			case "BIT_VECTOR": return DataType.                    BIT_VECTOR                    | ||||
| 			case "LOGIC_VECTOR": return DataType.                  LOGIC_VECTOR                  | ||||
| 			case "FIXED_POINT_INTEGER": return DataType.           FIXED_POINT_INTEGER           | ||||
| 			case "UNSIGNED_FIXED_POINT_INTEGER": return DataType.  UNSIGNED_FIXED_POINT_INTEGER  | ||||
| 			case "RECORD": return DataType.                        RECORD                        | ||||
| 			case "POINTER": return DataType.                       POINTER                       | ||||
| 			case "ARRAY": return DataType.                         ARRAY                         | ||||
| 			case "STRING": return DataType.                        STRING | ||||
| 			default: return DataType.INTEGER | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
| 	private def calculateConcurrencyIndicees(){ | ||||
| 		streams.each{ TxStream  stream -> stream.getMaxConcurrency() } | ||||
| 	} | ||||
|   | ||||
| @@ -46,6 +46,7 @@ import org.eclipse.swt.dnd.DropTargetEvent; | ||||
| import org.eclipse.swt.dnd.Transfer; | ||||
| import org.eclipse.swt.events.ControlAdapter; | ||||
| import org.eclipse.swt.events.ControlEvent; | ||||
| import org.eclipse.swt.events.DisposeListener; | ||||
| import org.eclipse.swt.events.MouseAdapter; | ||||
| import org.eclipse.swt.events.MouseEvent; | ||||
| import org.eclipse.swt.events.MouseListener; | ||||
| @@ -157,6 +158,7 @@ public class WaveformViewer implements IWaveformViewer  { | ||||
|  | ||||
| 		@Override | ||||
| 		public void mouseUp(MouseEvent e) { | ||||
| 			if(start==null) return; | ||||
| 			if((e.stateMask&SWT.MODIFIER_MASK&~SWT.SHIFT)!=0) return; //don't react on modifier | ||||
| 			if (e.button ==  1 && ((e.stateMask&SWT.SHIFT)==0)) { | ||||
| 				if(Math.abs(e.x-start.x)<3 && Math.abs(e.y-start.y)<3){				 | ||||
| @@ -1249,4 +1251,9 @@ public class WaveformViewer implements IWaveformViewer  { | ||||
| 			} | ||||
| 		}); | ||||
| 	} | ||||
| 	 | ||||
| 	/// probably not the way it should be done | ||||
| 	public void addDisposeListener( DisposeListener listener ) { | ||||
| 		waveformCanvas.addDisposeListener(listener); | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -17,6 +17,7 @@ import java.util.List; | ||||
| import org.eclipse.jface.viewers.ISelection; | ||||
| import org.eclipse.jface.viewers.ISelectionChangedListener; | ||||
| import org.eclipse.jface.viewers.ISelectionProvider; | ||||
| import org.eclipse.swt.events.DisposeListener; | ||||
| import org.eclipse.swt.graphics.RGB; | ||||
| import org.eclipse.swt.widgets.Control; | ||||
|  | ||||
| @@ -104,4 +105,6 @@ public interface IWaveformViewer extends PropertyChangeListener, ISelectionProvi | ||||
| 	public void setBaselineTime(Long scale); | ||||
| 	 | ||||
| 	public void scrollHorizontal(int percent); | ||||
| 	 | ||||
| 	public void addDisposeListener( DisposeListener listener ); | ||||
| } | ||||
| @@ -8,7 +8,4 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.8 | ||||
| Export-Package: com.minres.scviewer.database | ||||
| Bundle-ActivationPolicy: lazy | ||||
| Service-Component: OSGI-INF/component.xml,OSGI-INF/component2.xml | ||||
| Require-Bundle: org.eclipse.equinox.ds;bundle-version="1.4.200", | ||||
|  org.eclipse.equinox.util;bundle-version="1.0.500", | ||||
|  org.eclipse.osgi.services;bundle-version="3.4.0" | ||||
| Automatic-Module-Name: com.minres.scviewer.database | ||||
|   | ||||
| @@ -49,6 +49,8 @@ import org.eclipse.swt.SWT; | ||||
| import org.eclipse.swt.custom.SashForm; | ||||
| import org.eclipse.swt.events.ControlAdapter; | ||||
| import org.eclipse.swt.events.ControlEvent; | ||||
| import org.eclipse.swt.events.DisposeEvent; | ||||
| import org.eclipse.swt.events.DisposeListener; | ||||
| import org.eclipse.swt.events.ModifyEvent; | ||||
| import org.eclipse.swt.events.ModifyListener; | ||||
| import org.eclipse.swt.events.PaintEvent; | ||||
| @@ -58,6 +60,7 @@ import org.eclipse.swt.events.SelectionEvent; | ||||
| import org.eclipse.swt.layout.GridData; | ||||
| import org.eclipse.swt.layout.GridLayout; | ||||
| import org.eclipse.swt.widgets.Composite; | ||||
| import org.eclipse.swt.widgets.Control; | ||||
| import org.eclipse.swt.widgets.Text; | ||||
| import org.eclipse.swt.widgets.ToolBar; | ||||
| import org.eclipse.swt.widgets.ToolItem; | ||||
| @@ -344,6 +347,16 @@ public class DesignBrowser { | ||||
| 		thisSelectionCount=selection.toList().size(); | ||||
| 		updateButtons(); | ||||
| 	} | ||||
| 	 | ||||
| 	/**  | ||||
| 	 * reset tree viewer and tableviewer after every closed tab | ||||
| 	 */ | ||||
| 	protected void resetTreeViewer() { | ||||
| 		//reset tree- and tableviewer | ||||
| 		treeViewer.setInput(null); | ||||
| 		txTableViewer.setInput(null); | ||||
| 		txTableViewer.setSelection(null); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Gets the status event. | ||||
| @@ -354,21 +367,35 @@ public class DesignBrowser { | ||||
| 	@SuppressWarnings("unchecked") | ||||
| 	@Inject @Optional | ||||
| 	public void  getActiveWaveformViewerEvent(@UIEventTopic(WaveformViewer.ACTIVE_WAVEFORMVIEW) WaveformViewer waveformViewerPart) { | ||||
| 		if(this.waveformViewerPart!=null) | ||||
| 		if(this.waveformViewerPart!=null) {  | ||||
| 			this.waveformViewerPart.storeDesignBrowerState(new DBState()); | ||||
| 		} | ||||
| 		if( this.waveformViewerPart == null || this.waveformViewerPart != waveformViewerPart ) { | ||||
| 			waveformViewerPart.addDisposeListener( new DisposeListener() { | ||||
| 				@Override | ||||
| 				public void widgetDisposed(DisposeEvent e) { | ||||
| 					Control control = treeViewer.getControl(); | ||||
| 					// check if widget is already disposed (f.ex. because of workbench closing) | ||||
| 					if (control == null || control.isDisposed()) { //if so: do nothing | ||||
| 					}else {  //reset tree- and tableviewer | ||||
| 						resetTreeViewer(); | ||||
| 					} | ||||
| 				} | ||||
| 			} ); | ||||
| 		} | ||||
| 		this.waveformViewerPart=waveformViewerPart; | ||||
| 		IWaveformDb database = waveformViewerPart.getDatabase(); | ||||
| 		Object input = treeViewer.getInput(); | ||||
| 		if(input!=null && input instanceof List<?>){ | ||||
| 			IWaveformDb db = ((List<IWaveformDb>)input).get(0); | ||||
| 			if(db==database) return; // do nothing if old and new daabase is the same | ||||
| 			if(db==database) return; // do nothing if old and new database is the same | ||||
| 			((List<IWaveformDb>)input).get(0).removePropertyChangeListener(treeViewerPCL); | ||||
| 		} | ||||
| 		treeViewer.setInput(Arrays.asList(database.isLoaded()?new IWaveformDb[]{database}:new IWaveformDb[]{new LoadingWaveformDb()})); | ||||
| 		Object state=this.waveformViewerPart.retrieveDesignBrowerState(); | ||||
| 		if(state!=null && state instanceof DBState)  | ||||
| 			((DBState)state).apply(); | ||||
| 		else | ||||
| 		else  | ||||
| 			txTableViewer.setInput(null); | ||||
| 		// Set up the tree viewer | ||||
| 		database.addPropertyChangeListener(treeViewerPCL); | ||||
|   | ||||
| @@ -63,6 +63,8 @@ import org.eclipse.jface.viewers.IStructuredSelection; | ||||
| import org.eclipse.jface.viewers.SelectionChangedEvent; | ||||
| import org.eclipse.jface.viewers.StructuredSelection; | ||||
| import org.eclipse.swt.SWT; | ||||
| import org.eclipse.swt.events.DisposeEvent; | ||||
| import org.eclipse.swt.events.DisposeListener; | ||||
| import org.eclipse.swt.events.MouseEvent; | ||||
| import org.eclipse.swt.events.MouseTrackListener; | ||||
| import org.eclipse.swt.events.MouseWheelListener; | ||||
| @@ -72,6 +74,7 @@ import org.eclipse.swt.widgets.Composite; | ||||
| import org.eclipse.swt.widgets.Display; | ||||
| import org.eclipse.swt.widgets.Event; | ||||
| import org.eclipse.swt.widgets.Listener; | ||||
| import org.eclipse.swt.widgets.MessageBox; | ||||
|  | ||||
| import com.minres.scviewer.database.ITx; | ||||
| import com.minres.scviewer.database.ITxEvent; | ||||
| @@ -101,7 +104,7 @@ import com.minres.scviewer.e4.application.preferences.PreferenceConstants; | ||||
|  * The Class WaveformViewerPart. | ||||
|  */ | ||||
| @SuppressWarnings("restriction") | ||||
| public class WaveformViewer implements IFileChangeListener, IPreferenceChangeListener { | ||||
| public class WaveformViewer implements IFileChangeListener, IPreferenceChangeListener, DisposeListener { | ||||
|  | ||||
| 	/** The Constant ACTIVE_WAVEFORMVIEW. */ | ||||
| 	public static final String ACTIVE_WAVEFORMVIEW = "Active_Waveform_View"; //$NON-NLS-1$ | ||||
| @@ -149,6 +152,9 @@ public class WaveformViewer implements IFileChangeListener, IPreferenceChangeLis | ||||
| 	/** The Constant WAVE_ACTION_ID. */ | ||||
| 	public static final String WAVE_ACTION_ID = "com.minres.scviewer.ui.action.AddToWave"; //$NON-NLS-1$ | ||||
|  | ||||
| 	/** The number of active DisposeListeners */ | ||||
| 	private static int disposeListenerNumber = 0; | ||||
| 	 | ||||
| 	/** The factory. */ | ||||
| 	WaveformViewerFactory factory = new WaveformViewerFactory(); | ||||
|  | ||||
| @@ -178,6 +184,8 @@ public class WaveformViewer implements IFileChangeListener, IPreferenceChangeLis | ||||
| 	@Inject | ||||
| 	@Preference(nodePath = PreferenceConstants.PREFERENCES_SCOPE) | ||||
| 	IEclipsePreferences prefs; | ||||
| 	 | ||||
| 	@Inject @Optional DesignBrowser designBrowser; | ||||
|  | ||||
| 	/** The database. */ | ||||
| 	private IWaveformDb database; | ||||
| @@ -221,6 +229,8 @@ public class WaveformViewer implements IFileChangeListener, IPreferenceChangeLis | ||||
| 	 */ | ||||
| 	@PostConstruct | ||||
| 	public void createComposite(MPart part, Composite parent, IWaveformDbFactory dbFactory) { | ||||
| 		disposeListenerNumber += 1; | ||||
| 				 | ||||
| 		myPart = part; | ||||
| 		myParent = parent; | ||||
| 		database = dbFactory.getDatabase(); | ||||
| @@ -393,6 +403,8 @@ public class WaveformViewer implements IFileChangeListener, IPreferenceChangeLis | ||||
| 			} | ||||
| 		}); | ||||
| 		prefs.addPreferenceChangeListener(this); | ||||
| 		 | ||||
| 		waveformPane.addDisposeListener(this); | ||||
| 	} | ||||
|  | ||||
| 	/* (non-Javadoc) | ||||
| @@ -478,7 +490,17 @@ public class WaveformViewer implements IFileChangeListener, IPreferenceChangeLis | ||||
| 		job.addJobChangeListener(new JobChangeAdapter() { | ||||
| 			@Override | ||||
| 			public void done(IJobChangeEvent event) { | ||||
| 				if (event.getResult().getCode() != Status.OK_STATUS.getCode()) return; | ||||
| 				IStatus result = event.getResult(); | ||||
| 				if( (!result.isMultiStatus() && result.getCode() != Status.OK_STATUS.getCode() ) || | ||||
| 				    (result.isMultiStatus() && result.getChildren().length > 0 && result.getChildren()[0].getCode() != Status.OK_STATUS.getCode() ) ){ | ||||
| 					// kill editor and pop up warning for user | ||||
| 					sync.asyncExec(() -> { | ||||
| 						final Display display = myParent.getDisplay(); | ||||
| 						MessageDialog.openWarning(display.getActiveShell(), "Error loading database", "Database cannot be loaded. Aborting..."); | ||||
| 					    ePartService.hidePart(myPart, true); | ||||
| 					}); | ||||
| 					return; | ||||
| 				} | ||||
| 				sync.asyncExec(()->{ | ||||
| 					waveformPane.setMaxTime(database.getMaxTime()); | ||||
| 					if (state != null) | ||||
| @@ -1185,4 +1207,28 @@ public class WaveformViewer implements IFileChangeListener, IPreferenceChangeLis | ||||
| 		waveformPane.update(); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * add dispose listener | ||||
| 	 *  | ||||
| 	 * @param listener | ||||
| 	 */ | ||||
| 	public void addDisposeListener (DisposeListener listener) { | ||||
| 		waveformPane.getControl().addDisposeListener(listener); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * triggers included actions if widget is disposed | ||||
| 	 *  | ||||
| 	 * @param e | ||||
| 	 */ | ||||
|     public void widgetDisposed(DisposeEvent e) { | ||||
|     	disposeListenerNumber -= 1; | ||||
|     	if( disposeListenerNumber == 0) {  //if the last tab is closed, reset statusbar | ||||
| 			eventBroker.post(WaveStatusBarControl.ZOOM_LEVEL, null); | ||||
| 			eventBroker.post(WaveStatusBarControl.CURSOR_TIME, null); | ||||
| 			eventBroker.post(WaveStatusBarControl.MARKER_TIME, null); | ||||
| 			eventBroker.post(WaveStatusBarControl.MARKER_DIFF, null); | ||||
|     	} | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -1,4 +1,5 @@ | ||||
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
| <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> | ||||
| 	<groupId>com.minres.scviewer</groupId> | ||||
| @@ -24,25 +25,10 @@ | ||||
| 	</modules> | ||||
|  | ||||
| 	<properties> | ||||
| 		<tycho-version>0.23.1</tycho-version> | ||||
| 		<tycho-extras-version>${tycho-version}</tycho-extras-version> | ||||
| 		<groovy-eclipse-compiler-version>2.8.0-01</groovy-eclipse-compiler-version> | ||||
| 		<!-- <groovy-eclipse-batch-version>2.0.5</groovy-eclipse-batch-version> --> | ||||
| 		<groovy-eclipse-batch-version>2.1.8-01</groovy-eclipse-batch-version> | ||||
|  | ||||
| 		<tycho-version>1.5.0</tycho-version> | ||||
| 		<groovy-eclipse-compiler-version>3.5.0</groovy-eclipse-compiler-version> | ||||
| 		<groovy-eclipse-batch-version>2.5.8-03</groovy-eclipse-batch-version> | ||||
| 	</properties> | ||||
| 	<repositories> | ||||
| 		<repository> | ||||
| 			<id>mars</id> | ||||
| 			<layout>p2</layout> | ||||
| 			<url>http://download.eclipse.org/releases/photon</url> | ||||
| 		</repository> | ||||
| 		<repository> | ||||
| 			<id>GRECLIPSE</id> | ||||
| 			<layout>p2</layout> | ||||
| 			<url>http://dist.springsource.org/snapshot/GRECLIPSE/e4.8</url> | ||||
| 		</repository> | ||||
| 	</repositories> | ||||
|  | ||||
| 	<build> | ||||
| 		<plugins> | ||||
| @@ -53,11 +39,54 @@ | ||||
| 				<extensions>true</extensions> | ||||
| 			</plugin> | ||||
|  | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>tycho-source-plugin</artifactId> | ||||
| 				<version>${tycho-version}</version> | ||||
|  | ||||
| 				<executions> | ||||
| 					<execution> | ||||
| 						<id>plugin-source</id> | ||||
| 						<goals> | ||||
| 							<goal>plugin-source</goal> | ||||
| 						</goals> | ||||
| 					</execution> | ||||
| 				</executions> | ||||
| 			</plugin> | ||||
|  | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>tycho-p2-plugin</artifactId> | ||||
| 				<version>${tycho-version}</version> | ||||
| 				<executions> | ||||
| 					<execution> | ||||
| 						<id>attach-p2-metadata</id> | ||||
| 						<phase>package</phase> | ||||
| 						<goals> | ||||
| 							<goal>p2-metadata</goal> | ||||
| 						</goals> | ||||
| 					</execution> | ||||
| 				</executions> | ||||
| 			</plugin> | ||||
|  | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>tycho-versions-plugin</artifactId> | ||||
| 				<version>${tycho-version}</version> | ||||
| 			</plugin> | ||||
|  | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>target-platform-configuration</artifactId> | ||||
| 				<version>${tycho-version}</version> | ||||
| 				<configuration> | ||||
| 					<target> | ||||
| 						<artifact> | ||||
| 							<groupId>com.minres.scviewer</groupId> | ||||
| 							<artifactId>com.minres.scviewer.target</artifactId> | ||||
| 							<version>2.0.0-SNAPSHOT</version> | ||||
| 						</artifact> | ||||
| 					</target> | ||||
| 					<environments> | ||||
| 						<environment> | ||||
| 							<os>linux</os> | ||||
| @@ -91,7 +120,7 @@ | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho.extras</groupId> | ||||
| 				<artifactId>tycho-source-feature-plugin</artifactId> | ||||
| 				<version>${tycho-extras-version}</version> | ||||
| 				<version>${tycho-version}</version> | ||||
|  | ||||
| 				<executions> | ||||
| 					<execution> | ||||
| @@ -111,41 +140,6 @@ | ||||
| 				</configuration> | ||||
| 			</plugin> | ||||
|  | ||||
| 			<plugin> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>tycho-source-plugin</artifactId> | ||||
| 				<version>${tycho-version}</version> | ||||
|  | ||||
| 				<executions> | ||||
| 					<execution> | ||||
| 						<id>plugin-source</id> | ||||
| 						<goals> | ||||
| 							<goal>plugin-source</goal> | ||||
| 						</goals> | ||||
| 					</execution> | ||||
| 				</executions> | ||||
| 			</plugin> | ||||
|  | ||||
| 			<plugin> | ||||
| 				<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> | ||||
| 				<groupId>org.eclipse.tycho</groupId> | ||||
| 				<artifactId>tycho-versions-plugin</artifactId> | ||||
| 				<version>${tycho-version}</version> | ||||
| 			</plugin> | ||||
| 		</plugins> | ||||
| 	</build> | ||||
| </project> | ||||
| @@ -1,4 +1,6 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" standalone="no"?><?pde version="3.8"?><target name="Photon Platform" sequenceNumber="138"> | ||||
| <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||
| <?pde version="3.8"?> | ||||
| <target name="com.minres.scviewer.target" sequenceNumber="138"> | ||||
| <locations> | ||||
| <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit"> | ||||
| <unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/> | ||||
| @@ -11,8 +13,9 @@ | ||||
| <repository location="http://download.eclipse.org/releases/photon"/> | ||||
| </location> | ||||
| <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit"> | ||||
| <unit id="org.codehaus.groovy24.feature.feature.group" version="0.0.0"/> | ||||
| <unit id="org.codehaus.groovy24.feature.feature.group" version="3.5.1.v201909291550-e48"/> | ||||
| <repository location="http://dist.springsource.org/snapshot/GRECLIPSE/e4.8/"/> | ||||
| 	<unit id="org.codehaus.groovy25.feature.feature.group" version="3.5.1.v201909291550-e48"/> | ||||
| </location> | ||||
| </locations> | ||||
| <environment> | ||||
| @@ -1,22 +0,0 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" standalone="no"?><?pde version="3.8"?><target name="Neon Platform" sequenceNumber="138"> | ||||
| <locations> | ||||
| <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit"> | ||||
| <unit id="org.eclipse.equinox.executable.feature.group" version="3.6.300.v20161122-1740"/> | ||||
| <unit id="org.eclipse.platform.sdk" version="4.6.2.M20161124-1400"/> | ||||
| <unit id="org.eclipse.rcp.sdk.id" version="4.6.2.M20161124-1400"/> | ||||
| <unit id="org.eclipse.rcptt.core.feature.group" version="2.1.0.201604261352"/> | ||||
| <repository location="http://download.eclipse.org/releases/neon"/> | ||||
| </location> | ||||
| <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit"> | ||||
| <unit id="org.codehaus.groovy24.feature.feature.group" version="2.9.3.xx-201806261157-e46"/> | ||||
| <repository location="http://dist.springsource.org/snapshot/GRECLIPSE/e4.6"/> | ||||
| </location> | ||||
| </locations> | ||||
| <environment> | ||||
| <arch>x86_64</arch> | ||||
| <nl>de_DE</nl> | ||||
| </environment> | ||||
| <launcherArgs> | ||||
| <vmArgs>-Dosgi.requiredJavaVersion=1.7 -XX:MaxPermSize=256 -Xms40m -Xmx2G </vmArgs> | ||||
| </launcherArgs> | ||||
| </target> | ||||
| @@ -4,7 +4,7 @@ | ||||
| 	xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | ||||
| 	<modelVersion>4.0.0</modelVersion> | ||||
|  | ||||
| 	<artifactId>photon</artifactId> | ||||
| 	<artifactId>com.minres.scviewer.target</artifactId> | ||||
| 	 | ||||
| 	<packaging>eclipse-target-definition</packaging> | ||||
| 	<name>SCViewer Target Definition</name> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user