| Chunk |
|---|
| Conflicting content |
|---|
package org.sourcepit.b2.directory.parser.internal.extensions; <<<<<<< HEAD import static java.lang.Character.isWhitespace; ======= import static com.google.common.base.Preconditions.checkState; import static org.sourcepit.b2.model.interpolation.internal.module.B2MetadataUtils.addAssemblyClassifier; import static org.sourcepit.b2.model.interpolation.internal.module.B2MetadataUtils.addAssemblyName; >>>>>>> 08ecb042245c63941f86f4fa442d6623efd02f0e import java.io.File; import java.io.FileFilter; |
| Solution content |
|---|
package org.sourcepit.b2.directory.parser.internal.extensions; import static java.lang.Character.isWhitespace; import static com.google.common.base.Preconditions.checkState; import static org.sourcepit.b2.model.interpolation.internal.module.B2MetadataUtils.addAssemblyClassifier; import static org.sourcepit.b2.model.interpolation.internal.module.B2MetadataUtils.addAssemblyName; import java.io.File; import java.io.FileFilter; |
| File |
|---|
| ProductExtender.java |
| Developer's decision |
|---|
| Concatenation |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
import java.io.FileFilter; import java.util.ArrayList; import java.util.Collection; <<<<<<< HEAD import java.util.List; ======= import java.util.HashMap; import java.util.List; import java.util.Map; >>>>>>> 08ecb042245c63941f86f4fa442d6623efd02f0e import javax.inject.Inject; import javax.inject.Named; |
| Solution content |
|---|
import java.io.FileFilter; import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.HashMap; import java.util.Map; import javax.inject.Inject; import javax.inject.Named; |
| File |
|---|
| ProductExtender.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
}
Document productDoc = XmlUtils.readXml(productFile);
Element elem = productDoc.getDocumentElement();
<<<<<<< HEAD
=======
final String uid = elem.getAttribute("uid");
if (uid.length() == 0)
{
throw new IllegalStateException("Attribute uid not specified in product file "
+ productDef.getFile());
String version = elem.getAttribute("version");
if (version.length() == 0)
{
throw new IllegalStateException("Attribute version not specified in product file "
+ productDef.getFile());
}
>>>>>>> 08ecb042245c63941f86f4fa442d6623efd02f0e
final String id = elem.getAttribute("id");
if (id.startsWith(pluginProject.getId() + "."))
{ |
| Solution content |
|---|
Document productDoc = XmlUtils.readXml(productFile);
Element elem = productDoc.getDocumentElement();
final String id = elem.getAttribute("id");
if (id.startsWith(pluginProject.getId() + "."))
{ |
| File |
|---|
| ProductExtender.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| If statement |
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
}
}
<<<<<<< HEAD
private static String determineProductVersion(Element productXML, final StrictReference productPlugin)
{
String version = productXML.getAttribute("version");
if (version.length() == 0)
{
if (productPlugin != null)
{
version = productPlugin.getVersion();
}
else
{
version = null;
}
}
return version;
}
private static String determineProductUniqueId(File productFile, Element productXML,
final StrictReference productPlugin)
{
String uid = productXML.getAttribute("uid");
if (uid.length() == 0)
{
if (productPlugin == null)
{
throw new IllegalStateException("Attribute uid not specified in product file " + productFile);
}
else
{
uid = deriveProductUniqueId(productPlugin.getId(), productFile.getName());
}
}
return uid;
}
static String deriveProductUniqueId(String productPluginId, String productFileName)
{
final String[] nameSegments = normalizeAndSplitProductFileName(productFileName);
final String[] pluginSegments = productPluginId.split("\\.");
final StringBuilder sb = new StringBuilder();
int i = 0;
int j = 0;
final String firstNameSegment = nameSegments[0];
for (; i < pluginSegments.length; i++)
{
final String pluginSegment = pluginSegments[i];
sb.append(pluginSegment);
sb.append('.');
if (firstNameSegment.equals(pluginSegment))
{
i++;
j++;
break;
}
}
for (; i < pluginSegments.length && j < nameSegments.length; i++, j++)
{
final String pluginSegment = pluginSegments[i];
final String nameSegment = nameSegments[j];
if (pluginSegment.equals(nameSegment))
{
sb.append(pluginSegment);
sb.append('.');
}
else
{
j = 0;
break;
}
}
if (i != pluginSegments.length)
{
j = 0;
}
for (; i < pluginSegments.length; i++)
{
sb.append(pluginSegments[i]);
sb.append('.');
}
for (; j < nameSegments.length; j++)
{
sb.append(nameSegments[j]);
sb.append('.');
}
sb.append("product");
return sb.toString();
}
private static String[] normalizeAndSplitProductFileName(String productFileName)
{
int idx = productFileName.toLowerCase().lastIndexOf('.');
if (idx > -1)
{
productFileName = productFileName.substring(0, idx);
}
char[] chars = productFileName.toCharArray();
final List |
| Solution content |
|---|
}
}
private static String determineProductVersion(File productFile, Element productXML,
final StrictReference productPlugin)
{
String version = productXML.getAttribute("version");
if (version.length() == 0)
{
if (productPlugin != null)
{
version = productPlugin.getVersion();
}
else
{
throw new IllegalStateException("Attribute version not specified in product file " + productFile);
}
}
return version;
}
private static String determineProductUniqueId(File productFile, Element productXML,
final StrictReference productPlugin)
{
String uid = productXML.getAttribute("uid");
if (uid.length() == 0)
{
if (productPlugin == null)
{
throw new IllegalStateException("Attribute uid not specified in product file " + productFile);
}
else
{
uid = deriveProductUniqueId(productPlugin.getId(), productFile.getName());
}
}
return uid;
}
static String deriveProductUniqueId(String productPluginId, String productFileName)
{
final String[] nameSegments = normalizeAndSplitProductFileName(productFileName);
final String[] pluginSegments = productPluginId.split("\\.");
final StringBuilder sb = new StringBuilder();
int i = 0;
int j = 0;
final String firstNameSegment = nameSegments[0];
for (; i < pluginSegments.length; i++)
{
final String pluginSegment = pluginSegments[i];
sb.append(pluginSegment);
sb.append('.');
if (firstNameSegment.equals(pluginSegment))
{
i++;
j++;
break;
}
}
for (; i < pluginSegments.length && j < nameSegments.length; i++, j++)
{
final String pluginSegment = pluginSegments[i];
final String nameSegment = nameSegments[j];
if (pluginSegment.equals(nameSegment))
{
sb.append(pluginSegment);
sb.append('.');
}
else
{
j = 0;
break;
}
}
if (i != pluginSegments.length)
{
j = 0;
}
for (; i < pluginSegments.length; i++)
{
sb.append(pluginSegments[i]);
sb.append('.');
}
for (; j < nameSegments.length; j++)
{
sb.append(nameSegments[j]);
sb.append('.');
}
sb.append("product");
return sb.toString();
}
private static String[] normalizeAndSplitProductFileName(String productFileName)
{
int idx = productFileName.toLowerCase().lastIndexOf('.');
if (idx > -1)
{
productFileName = productFileName.substring(0, idx);
}
char[] chars = productFileName.toCharArray();
final List |
| File |
|---|
| ProductExtender.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| For statement |
| If statement |
| Method declaration |
| Method invocation |
| Method signature |
| Return statement |
| Variable |