Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void collectDependencies() throws IOException {
- System.out.println("Collecting dependencies of " + this.getFileName());
- ZipFile zipFile = new ZipFile(FileUtils.getFile(uri));
- Enumeration<? extends ZipEntry> entries = zipFile.entries();
- while (entries.hasMoreElements()) {
- ZipEntry entry = entries.nextElement();
- Path entryPath = Paths.get(getName(), "module.xml");
- // System.out.println("EntryName: " + entry.getName() + ";;" + entryPath);
- // filter out other files
- if (!entry.getName().equals(entryPath.toString())) {
- continue;
- }
- System.out.println("Found module.xml: " + entry.getName());
- InputStream stream = zipFile.getInputStream(entry);
- // create a new DocumentBuilderFactory
- DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- try {
- // use the factory to create a documentbuilder
- DocumentBuilder builder = factory.newDocumentBuilder();
- Document doc = builder.parse(stream);
- Node dependencies = doc.getElementsByTagName("Dependencies").item(0);
- if (dependencies == null) {
- // this module has no dependencies
- continue;
- }
- NodeList dependencyNodes = dependencies.getChildNodes();
- for (int i = 0; i < dependencyNodes.getLength(); i++) {
- Node node = dependencyNodes.item(i);
- if (node.getNodeType() == Node.ELEMENT_NODE) {
- Element elem = (Element) node;
- // Get the value of the ID attribute.
- String name = elem.getAttribute("name");
- String version = elem.getAttribute("version");
- // Element element = (Element) dependencyNodes.item(i);
- // String name = element.getAttribute("name");
- // String version = element.getAttribute("version");
- addDependency(new ModuleDependencyObject(name, version));
- System.out.println(this.getFileName() + " depends on " + name + "_" + version);
- }
- }
- } catch (Exception ex) {
- ex.printStackTrace();
- }
- }
- zipFile.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement