Source:
public boolean execute( final Property inputProperty, final Node outputNode, final Context context ) throws Exception { LOGGER.debug("VdbSequencer.execute called:outputNode name='{0}', path='{1}'", outputNode.getName(), outputNode.getPath()); final Binary binaryValue = inputProperty.getBinary(); CheckArg.isNotNull(binaryValue, "binary"); try (final ZipInputStream vdbStream = new ZipInputStream(binaryValue.getStream())) { VdbManifest manifest = null; ZipEntry entry = null; while ((entry = vdbStream.getNextEntry()) != null) { String entryName = entry.getName(); if (entryName.endsWith(MANIFEST_FILE)) { manifest = readManifest(vdbStream, outputNode, context); } else if (!entry.isDirectory() && this.modelSequencer.hasModelFileExtension(entryName)) { LOGGER.debug("----before reading model '{0}'", entryName); if (manifest == null) { throw new Exception("VDB manifest file has not been read"); } final VdbModel vdbModel = manifest.getModel(entryName); if (vdbModel == null) { throw new Exception("Model '" + entryName + "' was not found"); } final int index = entryName.lastIndexOf('/') + 1; if ((index != -1) && (index < entryName.length())) { entryName = entryName.substring(index); } final Node modelNode = outputNode.addNode(entryName, VdbLexicon.Vdb.MODEL); final boolean sequenced = this.modelSequencer.sequenceVdbModel(vdbStream, modelNode, vdbModel, context); if (!sequenced) { modelNode.remove(); LOGGER.debug(">>>>model NOT sequenced '{0}'\n\n", entryName); } else { LOGGER.debug(">>>>done sequencing model '{0}'\n\n", entryName); } } else { LOGGER.debug("----ignoring resource '{0}'", entryName); } } return true; } catch (final Exception e) { throw new RuntimeException(TeiidI18n.errorReadingVdbFile.text(inputProperty.getPath(), e.getMessage()), e); } }

Target:
public boolean execute( final Property inputProperty, final Node outputNode, final Context context ) throws Exception { LOGGER.debug("VdbSequencer.execute called:outputNode name='{0}', path='{1}'", outputNode.getName(), outputNode.getPath()); final Binary binaryValue = inputProperty.getBinary(); CheckArg.isNotNull(binaryValue, "binary"); try (final ZipInputStream vdbStream = new ZipInputStream(binaryValue.getStream())) { VdbManifest manifest = null; ZipEntry entry = null; while ((entry = vdbStream.getNextEntry()) != null) { String entryName = entry.getName(); if (entryName.endsWith(MANIFEST_FILE)) { manifest = readManifest(binaryValue, vdbStream, outputNode, context); } else if (!entry.isDirectory() && this.modelSequencer.hasModelFileExtension(entryName)) { LOGGER.debug("----before reading model '{0}'", entryName); if (manifest == null) { throw new Exception("VDB manifest file has not been read"); } final VdbModel vdbModel = manifest.getModel(entryName); if (vdbModel == null) { throw new Exception("Model '" + entryName + "' was not found"); } final int index = entryName.lastIndexOf('/') + 1; if ((index != -1) && (index < entryName.length())) { entryName = entryName.substring(index); } final Node modelNode = outputNode.addNode(entryName, VdbLexicon.Vdb.MODEL); final boolean sequenced = this.modelSequencer.sequenceVdbModel(vdbStream, modelNode, vdbModel, context); if (!sequenced) { modelNode.remove(); LOGGER.debug(">>>>model NOT sequenced '{0}'\n\n", entryName); } else { LOGGER.debug(">>>>done sequencing model '{0}'\n\n", entryName); } } else { LOGGER.debug("----ignoring resource '{0}'", entryName); } } return true; } catch (final Exception e) { throw new RuntimeException(TeiidI18n.errorReadingVdbFile.text(inputProperty.getPath(), e.getMessage()), e); } }