Skip to content

Commit

Permalink
chore(xslt): cleanup and small fix
Browse files Browse the repository at this point in the history
  • Loading branch information
lburgazzoli committed Apr 2, 2020
1 parent 4ac5043 commit 53f1b77
Showing 1 changed file with 8 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@
import io.quarkus.deployment.annotations.BuildStep;
import io.quarkus.deployment.annotations.ExecutionTime;
import io.quarkus.deployment.annotations.Record;
import io.quarkus.deployment.builditem.ArchiveRootBuildItem;
import io.quarkus.deployment.builditem.GeneratedClassBuildItem;
import io.quarkus.runtime.RuntimeValue;
import org.apache.camel.component.xslt.XsltComponent;
Expand Down Expand Up @@ -84,8 +83,7 @@ void xsltResources(
CamelXsltConfig config,
BuildProducer<XsltGeneratedClassBuildItem> generatedNames,
BuildProducer<GeneratedClassBuildItem> generatedClasses,
BuildProducer<UriResolverEntryBuildItem> uriResolverEntries,
ArchiveRootBuildItem archiveRoot) throws Exception {
BuildProducer<UriResolverEntryBuildItem> uriResolverEntries) throws Exception {

final Path destination = Files.createTempDirectory(XsltFeature.FEATURE);
final Set<String> translets = new LinkedHashSet<>();
Expand All @@ -94,15 +92,18 @@ void xsltResources(
for (String uri : config.sources.orElse(Collections.emptyList())) {
ResolutionResult resolvedUri = resolver.resolve(uri);
uriResolverEntries.produce(resolvedUri.toBuildItem());
final String translet = resolvedUri.transletClassName;
if (translets.contains(translet)) {
throw new RuntimeException("XSLT translet name clash: cannot add '" + translet

if (translets.contains(resolvedUri.transletClassName)) {
throw new RuntimeException("XSLT translet name clash: cannot add '" + resolvedUri.transletClassName
+ "' to previously added translets " + translets);
}

translets.add(resolvedUri.transletClassName);

try {
TransformerFactory tf = new XalanTransformerFactory();
tf.setAttribute("generate-translet", true);
tf.setAttribute("translet-name", translet);
tf.setAttribute("translet-name", resolvedUri.transletClassName);
tf.setAttribute("package-name", config.packageName);
tf.setAttribute("destination-directory", destination.toString());
tf.setErrorListener(new CamelXsltErrorListener());
Expand Down

0 comments on commit 53f1b77

Please sign in to comment.