/eu.etaxonomy.taxeditor.webapp/.settings/org.eclipse.m2e.core.prefs
/eu.etaxonomy.taxeditor.webapp/lib/
++/.ssh
<classpathentry exported="true" kind="lib" path="lib/commons-collections4-4.1.jar"/>
<classpathentry exported="true" kind="lib" path="lib/core-1.9.2.jar"/>
<classpathentry exported="true" kind="lib" path="lib/sequencing-1.9.2.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.core/bin"/>
- <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.io/bin"/>
- <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.swt/bin"/>
+ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.bio/bin"/>
+ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.core/bin"/>
+ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.swing/bin"/>
+ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.swt/bin"/>
+ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.tic.core/bin"/>
+ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.tic.swt/bin"/>
+ <classpathentry exported="true" kind="lib" path="lib/JPhyloIO/bin" sourcepath="lib/JPhyloIO/bin"/>
++ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.core/bin"/>
++ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.io/bin"/>
++ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.swt/bin"/>
++ <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.biojava1/bin"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
Bundle-ManifestVersion: 2
Bundle-Name: eu.etaxonomy.taxeditor.molecular.lib
Bundle-SymbolicName: eu.etaxonomy.taxeditor.molecular.lib;singleton:=true
- Bundle-Version: 4.2.0.qualifier
+ Bundle-Version: 4.4.0.qualifier
Bundle-ClassPath: .,
lib/owlapi-xmlutils-4.1.4.jar,
- lib/bioinfweb-commons-bio-2-SNAPSHOT.jar,
- lib/bioinfweb-commons-core-2-SNAPSHOT.jar,
- lib/bioinfweb-commons-swing-2-SNAPSHOT.jar,
- lib/bioinfweb-commons-swt-2-SNAPSHOT.jar,
- lib/jphyloio-core-0-SNAPSHOT.jar,
- lib/libralign-biojava1-0-SNAPSHOT.jar,
- lib/libralign-core-0-SNAPSHOT.jar,
- lib/libralign-swt-0-SNAPSHOT.jar,
- lib/tic-core-2-SNAPSHOT.jar,
- lib/tic-swt-2-SNAPSHOT.jar,
lib/commons-collections4-4.1.jar,
lib/core-1.9.2.jar,
- lib/sequencing-1.9.2.jar
+ lib/sequencing-1.9.2.jar,
+ lib/info.bioinfweb.commons.bio/bin/,
+ lib/info.bioinfweb.commons.core/bin/,
+ lib/info.bioinfweb.commons.swing/bin/,
+ lib/info.bioinfweb.commons.swt/bin/,
- lib/info.bioinfweb.libralign.core/bin/,
- lib/info.bioinfweb.libralign.io/bin/,
- lib/info.bioinfweb.libralign.swt/bin/,
+ lib/info.bioinfweb.tic.core/bin/,
+ lib/info.bioinfweb.tic.swt/bin/,
+ lib/JPhyloIO/bin/,
++ lib/info.bioinfweb.libralign.core/bin/,
++ lib/info.bioinfweb.libralign.io/bin/,
++ lib/info.bioinfweb.libralign.swt/bin/,
+ lib/info.bioinfweb.libralign.biojava1/bin/
Export-Package: info.bioinfweb.commons,
info.bioinfweb.commons.appversion,
info.bioinfweb.commons.beans,
private MultipleAlignmentsContainer alignmentsContainer = null;
-- private final Map<Integer, SingleReadAlignment> cdmMap = new TreeMap<Integer, SingleReadAlignment>(); //TODO Move this to ContigSequenceDataProvider
++ private final Map<String, SingleReadAlignment> cdmMap = new TreeMap<String, SingleReadAlignment>(); //TODO Move this to ContigSequenceDataProvider
private boolean dirty = false;
public AlignmentEditor()
}
-- public boolean hasPherogram(int sequenceID) {
++ public boolean hasPherogram(String sequenceID) {
return getReadsArea().getDataAreas().getSequenceAreas(sequenceID).size() > PHEROGRAM_AREA_INDEX;
}
-- public PherogramArea getPherogramArea(int sequenceID) {
++ public PherogramArea getPherogramArea(String sequenceID) {
if (hasPherogram(sequenceID)) {
return (PherogramArea)getReadsArea().getDataAreas().getSequenceAreas(sequenceID).get(PHEROGRAM_AREA_INDEX);
}
// Add test consensus sequence:
AlignmentModel consensusModel = getEditableConsensusArea().getAlignmentModel();
-- int id = consensusModel.addSequence(CONSENSUS_NAME);
++ String id = consensusModel.addSequence(CONSENSUS_NAME);
Collection<Object> tokens = new ArrayList<Object>(); // First save tokens in a collection to avoid GUI updated for each token.
tokens.add(consensusModel.getTokenSet().tokenByRepresentation("A"));
tokens.add(consensusModel.getTokenSet().tokenByRepresentation("C"));
if (pherogramInfo.getPherogram() != null) {
uri = MediaUtils.getFirstMediaRepresentationPart(pherogramInfo.getPherogram()).getUri();
}
-- int id = addRead(DerivateLabelProvider.getDerivateText(pherogramInfo, conversationHolder),
++ String id = addRead(DerivateLabelProvider.getDerivateText(pherogramInfo, conversationHolder),
uri,
singleReadAlignment.isReverseComplement(),
singleReadAlignment.getEditedSequence(),
// Set consensus sequence:
AlignmentModel consensusProvider = getEditableConsensusArea().getAlignmentModel();
-- int id = consensusProvider.addSequence(CONSENSUS_NAME);
++ String id = consensusProvider.addSequence(CONSENSUS_NAME);
consensusProvider.insertTokensAt(id, 0, AlignmentModelUtils.charSequenceToTokenList(
sequenceNode.getConsensusSequence().getString(), consensusProvider.getTokenSet()));
//TODO Can the consensus sequence also be null? / Should it be created here, if nothing is in the DB?
// Write single reads:
stringProvider.setUnderlyingModel(getReadsArea().getAlignmentModel());
sequenceNode.getSingleReadAlignments().retainAll(cdmMap.values()); // Remove all reads that are not in the alignment anymore.
-- Iterator<Integer> iterator = getReadsArea().getAlignmentModel().sequenceIDIterator();
++ Iterator<String> iterator = getReadsArea().getAlignmentModel().sequenceIDIterator();
while (iterator.hasNext()) {
-- int id = iterator.next();
++ String id = iterator.next();
SingleReadAlignment singleRead = cdmMap.get(id);
if (singleRead == null) {
throw new InternalError("Creating new reads from AlignmentEditor not implemented.");
SelectionModel selection = getReadsArea().getSelection();
AlignmentModel<?> model = getReadsArea().getAlignmentModel();
for (int row = selection.getFirstRow(); row < selection.getFirstRow() + selection.getCursorHeight(); row++) {
-- int sequenceID = getReadsArea().getSequenceOrder().idByIndex(row);
++ String sequenceID = getReadsArea().getSequenceOrder().idByIndex(row);
PherogramArea area = getPherogramArea(sequenceID);
PherogramAreaModel pherogramAlignmentModel = area.getModel();
AlignmentModelUtils.reverseComplement(model, sequenceID,
public <T> void createConsensusSequence() {
ConsensusSequenceArea area = getConsensusHintDataArea();
AlignmentModel<T> model = (AlignmentModel<T>)getEditableConsensusArea().getAlignmentModel();
-- int sequenceID = model.sequenceIDIterator().next(); // There is always one sequence contained.
++ String sequenceID = model.sequenceIDIterator().next(); // There is always one sequence contained.
int length = getReadsArea().getAlignmentModel().getMaxSequenceLength();
Collection<T> tokens = new ArrayList<T>(length);
ConsensusSequenceArea area = getConsensusHintDataArea();
AlignmentModel<T> model = (AlignmentModel<T>)getEditableConsensusArea().getAlignmentModel();
TokenSet<T> tokenSet = model.getTokenSet();
-- int sequenceID = model.sequenceIDIterator().next(); // There is always one sequence contained.
++ String sequenceID = model.sequenceIDIterator().next(); // There is always one sequence contained.
int currentConsensusLength = model.getSequenceLength(sequenceID);
int overallLength = getReadsArea().getAlignmentModel().getMaxSequenceLength();
private String newReadName() {
int index = 1;
-- while (getReadsArea().getAlignmentModel().sequenceIDByName(DEFAULT_READ_NAME_PREFIX + index)
-- != AlignmentModel.NO_SEQUENCE_FOUND) {
--
++ while (getReadsArea().getAlignmentModel().sequenceIDByName(DEFAULT_READ_NAME_PREFIX + index) != null) {
index++;
}
return DEFAULT_READ_NAME_PREFIX + index;
* @throws IOException if an error occurred when trying to read the pherogram file
* @throws UnsupportedChromatogramFormatException if the format of the pherogram file is not supported
*/
-- public int addRead(String name, URI pherogramURI, boolean reverseComplemented, String editedSequence,
++ public String addRead(String name, URI pherogramURI, boolean reverseComplemented, String editedSequence,
Integer firstSeqPos, Integer leftCutPos, Integer rightCutPos, SingleReadAlignment.Shift[] shifts)
throws IOException, UnsupportedChromatogramFormatException {
// Create sequence:
provider.addSequence(name);
-- int id = provider.sequenceIDByName(name);
++ String id = provider.sequenceIDByName(name);
// Set edited sequence:
Collection<Object> tokens = null; // First save tokens in a collection to avoid GUI updated for each token.
if (activePart instanceof AlignmentEditor) {
AlignmentEditor editor = (AlignmentEditor)activePart;
-- Iterator<Integer> idIterator = editor.getReadsArea().getAlignmentModel().sequenceIDIterator();
++ Iterator<String> idIterator = editor.getReadsArea().getAlignmentModel().sequenceIDIterator();
while (idIterator.hasNext()) {
PherogramArea area = editor.getPherogramArea(idIterator.next());
if (area != null) {
* @date 26.08.2015\r
*/\r
public class AlignmentEditorPasteHandler extends AbstractFocusedAlignmentAreaHandler implements IElementUpdater {\r
-- private void pasteString(AlignmentArea area, int sequenceID, String content) {\r
++ private void pasteString(AlignmentArea area, String sequenceID, String content) {\r
area.getActionProvider().deleteSelection(); // Overwrite selected tokens.\r
area.getActionProvider().elongateSequence(sequenceID, area.getSelection().getCursorColumn());\r
\r
++ @SuppressWarnings("unchecked")\r
AlignmentModel<Object> alignmentModel = (AlignmentModel<Object>)area.getAlignmentModel();\r
alignmentModel.insertTokensAt(sequenceID, area.getSelection().getCursorColumn(),\r
AlignmentModelUtils.charSequenceToTokenList(content, alignmentModel.getTokenSet(),\r
\r
if (!lines.isEmpty()) { //TODO Can lines be empty? (Can an empty string "" be copied to the clipboard?)\r
if (selection.getCursorHeight() == 1) { // If the consensus sequence is focused, this is the only possible case.\r
-- int sequenceID = focusedArea.getSequenceOrder().idByIndex(selection.getCursorRow());\r
++ String sequenceID = focusedArea.getSequenceOrder().idByIndex(selection.getCursorRow());\r
if (lines.size() == 1) {\r
pasteString(focusedArea, sequenceID, lines.get(0));\r
}\r
--<?xml version="1.0" encoding="UTF-8"?>
- <?pde version="3.5"?><product application="eu.etaxonomy.taxeditor.application.application" id="eu.etaxonomy.taxeditor.application.eu_etaxonomy_taxeditor_product" includeLaunchers="true" name="EDIT Taxonomic Editor" uid="eu.etaxonomy.taxeditor.product" useFeatures="true" version="4.2.0.qualifier">
-<?pde version="3.5"?><product application="eu.etaxonomy.taxeditor.application.application" id="eu.etaxonomy.taxeditor.application.eu_etaxonomy_taxeditor_product" includeLaunchers="true" name="EDIT Taxonomic Editor" uid="eu.etaxonomy.taxeditor.product" useFeatures="true" version="4.4.0.qualifier">
-- <aboutInfo>
-- <image path="/eu.etaxonomy.taxeditor.application/icons/256color_48x48.gif"/>
-- <text>
-- %productBlurb
-- </text>
-- </aboutInfo>
-- <configIni use="default"></configIni>
-- <launcherArgs>
-- <programArgs>-data @user.home/.cdmLibrary -Dserver_port=58080
-- </programArgs>
-- <vmArgs>-Xmx512M -XX:MaxPermSize=256M -Dorg.eclipse.update.reconcile=false -Declipse.p2.unsignedPolicy=allow
-- </vmArgs>
-- <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
-- </vmArgsMac>
-- </launcherArgs>
-- <windowImages i16="/eu.etaxonomy.taxeditor.application/icons/256color_16x16.gif" i32="/eu.etaxonomy.taxeditor.application/icons/256color_32x32.gif" i48="/eu.etaxonomy.taxeditor.application/icons/256color_48x48.gif"/>
-- <splash location="eu.etaxonomy.taxeditor.application" startupForegroundColor="000000" startupMessageRect="7,432,360,20" startupProgressRect="5,447,366,15"/>
-- <launcher name="TaxonomicEditor">
-- <solaris/>
-- <win useIco="false">
-- <bmp/>
-- </win>
-- </launcher>
-- <vm></vm>
-- <plugins></plugins>
-- <features>
-- <feature id="eu.etaxonomy.taxeditor.feature"/>
-- </features>
-- <configurations>
-- <plugin autoStart="true" id="eu.etaxonomy.taxeditor.application" startLevel="5"/>
-- <plugin autoStart="true" id="org.eclipse.core.runtime" startLevel="4"/>
-- <plugin autoStart="true" id="org.eclipse.equinox.common" startLevel="2"/>
-- <plugin autoStart="true" id="org.eclipse.equinox.ds" startLevel="2"/>
-- <plugin autoStart="true" id="org.eclipse.equinox.p2.transport.ecf" startLevel="4"/>
-- <plugin autoStart="true" id="org.eclipse.equinox.simpleconfigurator" startLevel="1"/>
-- </configurations>
--</product>
++<?xml version="1.0" encoding="UTF-8"?>\r
++<?pde version="3.5"?>\r
++\r
++<product name="EDIT Taxonomic Editor" uid="eu.etaxonomy.taxeditor.product" id="eu.etaxonomy.taxeditor.application.eu_etaxonomy_taxeditor_product" application="eu.etaxonomy.taxeditor.application.application" version="4.4.0.qualifier" useFeatures="true" includeLaunchers="true">\r
++\r
++ <aboutInfo>\r
++ <image path="/eu.etaxonomy.taxeditor.application/icons/256color_48x48.gif"/>\r
++ <text>\r
++ %productBlurb\r
++ </text>\r
++ </aboutInfo>\r
++\r
++ <configIni use="default">\r
++ </configIni>\r
++\r
++ <launcherArgs>\r
++ <programArgs>-data @user.home/.cdmLibrary -Dserver_port=58080\r
++ </programArgs>\r
++ <vmArgs>-Xmx512M -XX:MaxPermSize=256M -Dorg.eclipse.update.reconcile=false -Declipse.p2.unsignedPolicy=allow\r
++ </vmArgs>\r
++ <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts\r
++ </vmArgsMac>\r
++ </launcherArgs>\r
++\r
++ <windowImages i16="/eu.etaxonomy.taxeditor.application/icons/256color_16x16.gif" i32="/eu.etaxonomy.taxeditor.application/icons/256color_32x32.gif" i48="/eu.etaxonomy.taxeditor.application/icons/256color_48x48.gif"/>\r
++\r
++ <splash\r
++ location="eu.etaxonomy.taxeditor.application"\r
++ startupProgressRect="5,447,366,15"\r
++ startupMessageRect="7,432,360,20"\r
++ startupForegroundColor="000000" />\r
++ <launcher name="TaxonomicEditor">\r
++ <solaris/>\r
++ <win useIco="false">\r
++ <bmp/>\r
++ </win>\r
++ </launcher>\r
++\r
++ <vm>\r
++ </vm>\r
++\r
++ <plugins>\r
++ </plugins>\r
++\r
++ <features>\r
++ <feature id="eu.etaxonomy.taxeditor.feature"/>\r
++ </features>\r
++\r
++ <configurations>\r
++ <plugin id="eu.etaxonomy.taxeditor.application" autoStart="true" startLevel="5" />\r
++ <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />\r
++ <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />\r
++ <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />\r
++ <plugin id="org.eclipse.equinox.p2.transport.ecf" autoStart="true" startLevel="4" />\r
++ <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />\r
++ </configurations>\r
++\r
++</product>\r
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?><target name="Eclipse Indigo Target" sequenceNumber="7">
-<locations>
-<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
-<unit id="org.eclipse.swtbot.eclipse.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-<unit id="org.eclipse.swtbot.eclipse.gef.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-<unit id="org.eclipse.swtbot.ide.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-<unit id="org.eclipse.swtbot.eclipse.test.junit4.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-<repository location="http://download.eclipse.org/technology/swtbot/helios/dev-build/update-site"/>
-</location>
-<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
-<unit id="org.eclipse.jdt.feature.group" version="3.7.2.v20120120-1414-7z8gFcuFMP7BW5XTz0jLTnz0l9B1"/>
-<unit id="org.eclipse.pde.source.feature.group" version="3.7.2.v20120120-1420-7b7rFUOFEx2Xnqafnpz0E--0"/>
-<unit id="org.eclipse.platform.feature.group" version="3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q"/>
-<unit id="org.eclipse.equinox.executable.feature.group" version="3.5.1.v20111216-1653-7P7NFUIFIbaUcU77s0KQWHw5HZTZ"/>
-<unit id="org.eclipse.platform.source.feature.group" version="3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q"/>
-<unit id="org.eclipse.platform.sdk" version="3.7.2.M20120208-0800"/>
-<unit id="org.eclipse.rcp.feature.group" version="3.7.2.v20120120-1424-9DB5FmnFq5JCf1UA38R-kz0S0272"/>
-<unit id="org.eclipse.rcp.source.feature.group" version="3.7.2.v20120120-1424-9DB5FmnFq5JCf1UA38R-kz0S0272"/>
-<unit id="org.eclipse.rcp.sdk.id" version="3.7.2.M20120208-0800"/>
-<unit id="org.eclipse.equinox.sdk.feature.group" version="3.7.1.R37x_v20110907-7M7W8i8eNV4WsRkue-4Vq4J6pCyW"/>
-<unit id="org.eclipse.zest.sdk.feature.group" version="1.3.0.v20110425-2050-67C18COMPIAKSVKGQaRTQTiSN8WP"/>
-<unit id="org.eclipse.pde.feature.group" version="3.7.2.v20120120-1420-7b7rFUOFEx2Xnqafnpz0E--0"/>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>\r
+<?pde version="3.8"?><target name="Eclipse Indigo Target" sequenceNumber="8">\r
+<locations>\r
+<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">\r
+<unit id="org.eclipse.swtbot.eclipse.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
+<unit id="org.eclipse.swtbot.eclipse.gef.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
+<unit id="org.eclipse.swtbot.ide.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
+<unit id="org.eclipse.swtbot.eclipse.test.junit4.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
+<repository location="http://download.eclipse.org/technology/swtbot/helios/dev-build/update-site"/>\r
+</location>\r
+<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">\r
+<unit id="org.eclipse.jdt.feature.group" version="3.7.2.v20120120-1414-7z8gFcuFMP7BW5XTz0jLTnz0l9B1"/>\r
+<unit id="org.eclipse.pde.source.feature.group" version="3.7.2.v20120120-1420-7b7rFUOFEx2Xnqafnpz0E--0"/>\r
+<unit id="org.eclipse.platform.feature.group" version="3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q"/>\r
+<unit id="org.eclipse.equinox.executable.feature.group" version="3.5.1.v20111216-1653-7P7NFUIFIbaUcU77s0KQWHw5HZTZ"/>\r
+<unit id="org.eclipse.platform.source.feature.group" version="3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q"/>\r
+<unit id="org.eclipse.platform.sdk" version="3.7.2.M20120208-0800"/>\r
+<unit id="org.eclipse.rcp.feature.group" version="3.7.2.v20120120-1424-9DB5FmnFq5JCf1UA38R-kz0S0272"/>\r
+<unit id="org.eclipse.rcp.source.feature.group" version="3.7.2.v20120120-1424-9DB5FmnFq5JCf1UA38R-kz0S0272"/>\r
+<unit id="org.eclipse.rcp.sdk.id" version="3.7.2.M20120208-0800"/>\r
+<unit id="org.eclipse.equinox.sdk.feature.group" version="3.7.1.R37x_v20110907-7M7W8i8eNV4WsRkue-4Vq4J6pCyW"/>\r
+<unit id="org.eclipse.zest.sdk.feature.group" version="1.3.0.v20110425-2050-67C18COMPIAKSVKGQaRTQTiSN8WP"/>\r
+<unit id="org.eclipse.pde.feature.group" version="3.7.2.v20120120-1420-7b7rFUOFEx2Xnqafnpz0E--0"/>\r
- <repository location="http://download.eclipse.org/releases/indigo"/>\r
+ <repository location="http://download.eclipse.org/releases/indigo/"/>
-</location>
-<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
-<unit id="org.eclipse.nebula.widgets.compositetable.feature.feature.group" version="1.0.0.201409040043"/>
-<repository location="http://archive.eclipse.org/nebula/Q32014/release/"/>
-</location>
-</locations>
-</target>
+</location>\r
+<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">\r
+<unit id="org.eclipse.nebula.widgets.compositetable.feature.feature.group" version="1.0.0.201409040043"/>\r
+<repository location="http://archive.eclipse.org/nebula/Q32014/release/"/>\r
+</location>\r
+</locations>\r
+</target>\r