Skip to content

Commit

Permalink
#1007: implement domain model for ide-urls (#1040)
Browse files Browse the repository at this point in the history
  • Loading branch information
cinnamon-coder-hub authored Feb 13, 2023
1 parent 7165d8c commit b080100
Show file tree
Hide file tree
Showing 23 changed files with 1,013 additions and 22 deletions.
3 changes: 3 additions & 0 deletions .lift.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
build = "mvn"

ignoreRules = [ "Var", "Varifier" ]
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import java.util.Properties;

import org.assertj.core.api.Assertions;
import org.junit.Test;
import org.junit.jupiter.api.Test;

import com.devonfw.tools.ide.configurator.merge.PropertiesMerger;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import java.io.OutputStreamWriter;

import org.assertj.core.api.Assertions;
import org.junit.Test;
import org.junit.jupiter.api.Test;

/**
* Test of {@link SortedProperties}.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
import javax.xml.parsers.ParserConfigurationException;

import org.assertj.core.api.Assertions;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
Expand Down
38 changes: 19 additions & 19 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.devonfw</groupId>
Expand All @@ -19,12 +18,12 @@
<github.repository>ide</github.repository>
<devon_ide_version>${revision}</devon_ide_version>
</properties>

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
Expand All @@ -40,6 +39,7 @@
<module>configurator</module>
<module>scripts</module>
<module>settings</module>
<module>url-updater</module>
</modules>

<build>
Expand Down Expand Up @@ -81,74 +81,74 @@
<name>J&#246;rg Hohwiller</name>
<email>hohwille@users.sourceforge.net</email>
<organization>Capgemini</organization>
<organizationUrl/>
<organizationUrl />
<roles>
<role>admin</role>
<role>designer</role>
<role>developer</role>
</roles>
<timezone>+1</timezone>
<properties/>
<properties />
</developer>
<developer>
<id>trippl</id>
<name>Thomas Rippl</name>
<email></email>
<organization></organization>
<organizationUrl/>
<organizationUrl />
<roles>
<role>developer</role>
</roles>
<timezone>+1</timezone>
<properties/>
<properties />
</developer>
<developer>
<id>markusschuh</id>
<name>Markus Schuh</name>
<email></email>
<organization>Capgemini</organization>
<organizationUrl/>
<organizationUrl />
<roles>
<role>contributor</role>
</roles>
<timezone>+1</timezone>
<properties/>
<properties />
</developer>
<developer>
<id>maybeec</id>
<name>Malte Brunnlieb</name>
<email></email>
<organization>Capgemini</organization>
<organizationUrl/>
<organizationUrl />
<roles>
<role>contributor</role>
</roles>
<timezone>+1</timezone>
<properties/>
<properties />
</developer>
<developer>
<id>ediekman</id>
<name>Erik Diekmann</name>
<email></email>
<organization>Capgemini</organization>
<organizationUrl/>
<organizationUrl />
<roles>
<role>contributor</role>
</roles>
<timezone>+1</timezone>
<properties/>
<properties />
</developer>
<developer>
<id>nricheton</id>
<name>Nicolas Richeton</name>
<email></email>
<organization>Capgemini</organization>
<organizationUrl/>
<organizationUrl />
<roles>
<role>contributor</role>
</roles>
<timezone>+1</timezone>
<properties/>
<properties />
</developer>
</developers>
</project>
96 changes: 96 additions & 0 deletions url-updater/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.devonfw.tools.ide.dev</groupId>
<artifactId>devonfw-ide</artifactId>
<version>dev-SNAPSHOT</version>
</parent>
<groupId>com.devonfw.tools.ide</groupId>
<artifactId>devonfw-ide-url-updater</artifactId>
<packaging>jar</packaging>
<version>${revision}</version>
<name>${project.artifactId}</name>
<description>Code for maintenance of download urls of IDEs tools (Eclipse, Docker, etc.).</description>

<dependencies>
<dependency>
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
<version>1.1.4</version>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<version>1.1.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.19.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>2.0.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.14.1</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.7.2</version>
</dependency>
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>4.2.2</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.14.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>

</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.devonfw.tools.ide.url.folderhandling.UrlRepository</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>
</plugins>
</build>

</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package com.devonfw.tools.ide.url.folderhandling;

import java.nio.file.Path;

import com.devonfw.tools.ide.url.folderhandling.abstractUrlClasses.AbstractUrlArtifact;

/**
* An {@link UrlArtifact} represents a file or folder in the directory structure of a devonfw-ide urls repository.
*
* @see UrlRepository
* @see UrlTool
* @see UrlEdition
* @see UrlVersion
* @see UrlDownloadFile
*/
public interface UrlArtifact {

/**
* @return the {@link Path} to this {@link AbstractUrlArtifact} as folder or file on the disc.
*/
Path getPath();

/**
* @return name the file-name of this {@link AbstractUrlArtifact}.
*/
String getName();
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package com.devonfw.tools.ide.url.folderhandling;

/**
* Interface for an {@link UrlArtifact} that has a {@link #getParent() parent}.
*
* @param <P> type of the {@link #getParent() parent} {@link UrlFolder folder}.
*/
public interface UrlArtifactWithParent<P extends UrlFolder<?>> extends UrlArtifact {

/**
* @return the parent {@link UrlFolder} owning this artifact as child.
*/
P getParent();
}
Loading

0 comments on commit b080100

Please sign in to comment.