Skip to content

Commit

Permalink
Merge pull request #4 from 6b6279/dev
Browse files Browse the repository at this point in the history
Fixes from TraVarT-kconfig
  • Loading branch information
coemgen1992 authored Nov 28, 2024
2 parents 2a8c096 + f8df3a3 commit b5dd9fe
Show file tree
Hide file tree
Showing 20 changed files with 204 additions and 107 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@

# Package Files #
*.jar
# ...unless in lib/
!lib/*
*.war
*.nar
*.ear
Expand Down Expand Up @@ -43,3 +45,4 @@ hs_err_pid*
.settings/**
.classpath
/target/
/bin/
File renamed without changes.
1 change: 1 addition & 0 deletions lib/de/ovgu/featureide/lib.fm/3.10.0/lib.fm-3.10.0.jar.md5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
2f1c8e695223cc2f731aef93790f9914
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
c478c92084838d468afb7d17863f3752138d1ec2
8 changes: 8 additions & 0 deletions lib/de/ovgu/featureide/lib.fm/3.10.0/lib.fm-3.10.0.pom
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>de.ovgu.featureide</groupId>
<artifactId>lib.fm</artifactId>
<version>3.10.0</version>
</project>
1 change: 1 addition & 0 deletions lib/de/ovgu/featureide/lib.fm/3.10.0/lib.fm-3.10.0.pom.md5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
40c5798d31196f905c7ec4d87cf9f0d5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
54b0f170c711ad33b973653b82ae7f2ecfbabd0a
Binary file not shown.
1 change: 1 addition & 0 deletions lib/de/ovgu/featureide/lib.fm/3.11.1/lib.fm-3.11.1.jar.md5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
aa38fc4f087b796610c6b7468e07858a
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
4af78e8fff91c775a3937fc7a18969faaf4851c8
8 changes: 8 additions & 0 deletions lib/de/ovgu/featureide/lib.fm/3.11.1/lib.fm-3.11.1.pom
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>de.ovgu.featureide</groupId>
<artifactId>lib.fm</artifactId>
<version>3.11.1</version>
</project>
1 change: 1 addition & 0 deletions lib/de/ovgu/featureide/lib.fm/3.11.1/lib.fm-3.11.1.pom.md5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
3f458ad92354b64a900fddc7a48015ed
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
2bef2ad938da7b38a646704bf312b1bea7719432
13 changes: 13 additions & 0 deletions lib/de/ovgu/featureide/lib.fm/maven-metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>de.ovgu.featureide</groupId>
<artifactId>lib.fm</artifactId>
<versioning>
<release>3.11.1</release>
<versions>
<version>3.10.0</version>
<version>3.11.1</version>
</versions>
<lastUpdated>20240524151351</lastUpdated>
</versioning>
</metadata>
1 change: 1 addition & 0 deletions lib/de/ovgu/featureide/lib.fm/maven-metadata.xml.md5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
227522d5162fa42a3faf3631268872f3
1 change: 1 addition & 0 deletions lib/de/ovgu/featureide/lib.fm/maven-metadata.xml.sha1
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
f796041ace61d2bb10434902348a462cab878edd
154 changes: 81 additions & 73 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,92 +13,100 @@
<source.disabled>true</source.disabled>
<checkstyle-maven-plugin.version>3.4.0</checkstyle-maven-plugin.version>
</properties>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.pf4j/pf4j -->
<dependency>
<groupId>org.pf4j</groupId>
<artifactId>pf4j</artifactId>
<version>3.8.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>io.github.universal-variability-language</groupId>
<artifactId>uvl-parser</artifactId>
<version>0.3</version>
<scope>provided</scope>
</dependency>
<dependency>

<repositories>
<repository>
<id>travart-lib-static</id>
<url>file://${project.basedir}/lib</url>
</repository>
</repositories>

<dependencies>
<!-- https://mvnrepository.com/artifact/org.pf4j/pf4j -->
<dependency>
<groupId>org.pf4j</groupId>
<artifactId>pf4j</artifactId>
<version>3.8.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>io.github.universal-variability-language</groupId>
<artifactId>uvl-parser</artifactId>
<version>0.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>io.github.universal-variability-language</groupId>
<artifactId>uvl-metamodel</artifactId>
<version>1.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.20.0</version>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.20.0</version>
</dependency>
<dependency>
<groupId>org.logicng</groupId>
<artifactId>logicng-j11</artifactId>
<version>2.4.3</version>
</dependency>
<dependency>
<groupId>de.ovgu.featureide</groupId>
<artifactId>lib.fm</artifactId>
<version>3.10.0</version>
<dependency>
<groupId>org.logicng</groupId>
<artifactId>logicng-j11</artifactId>
<version>2.4.3</version>
</dependency>
<dependency>
<groupId>de.ovgu.featureide</groupId>
<artifactId>lib.fm</artifactId>
<version>3.10.0</version>
</dependency>
<dependency>
<groupId>org.opt4j</groupId>
<artifactId>opt4j-satdecoding</artifactId>
<version>3.1.4</version>
</dependency>
<dependency>
<groupId>info.picocli</groupId>
<artifactId>picocli</artifactId>
<version>4.7.4</version>
<groupId>info.picocli</groupId>
<artifactId>picocli</artifactId>
<version>4.7.4</version>
</dependency>
</dependencies>
</dependencies>

<build>
<resources>
<resource>
<filtering>false</filtering>
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</resource>
<resource>
<filtering>false</filtering>
<directory>.</directory>
<includes>
<include>LICENSE</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${checkstyle-maven-plugin.version}</version>
<configuration>
<configLocation>${project.basedir}/checkstyle.xml</configLocation>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<build>
<resources>
<resource>
<filtering>false</filtering>
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</resource>
<resource>
<filtering>false</filtering>
<directory>.</directory>
<includes>
<include>LICENSE</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${checkstyle-maven-plugin.version}</version>
<configuration>
<configLocation>${project.basedir}/checkstyle.xml</configLocation>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
30 changes: 23 additions & 7 deletions src/main/java/at/jku/cps/travart/core/common/IConfigurable.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,25 +18,41 @@

/**
* This represents a configurable item of an variablilty model. An item
* implementing this interface can be selected.
* implementing this interface can be configured.
*
* @author Johann Stoebich
* @author Kevin Feichtinger
*/
public interface IConfigurable {
/**
* Returns whether the feature is selected or not.
* Returns whether this object is configured.
*
* This usually refers to the existence of some concrete value configuration.
* For the example of integer features (in the scope of FOP), the setting of any
* value is a configuration. The lack of a configuration occurs when the value
* field of the respective feature is not initialised, e.g., set to `null`.
*
* @return whether the feature is selected or not.
* @return whether the object is configured or not
*/
boolean isSelected();
boolean isConfigured();

/**
* De-/Selects the feature.
* Configures this object.
*
* What exactly "configure" means in this context, depends on the class
* implementing IConfigurable. For feature-like value objects, to "configure" an
* unconfigured object might just be setting the value field to a default
* reference value, e.g., 0. If the object is already configured, "configuring"
* the object again should not reset the configuration, but instead do nothing.
* For the re-configuration, use the getter/setter of the configuration-specific
* field, in case of a value object, the value field.
*
* Unconfiguring a configured object should remove the configuration-specific
* values from the respective fields, usually by setting this fields to `null`.
*
* @param selected De-/Selects the configurable.
* @param selected Toggle "configuredless" of this object
*/
void setSelected(boolean selected);
void setConfigured(boolean configured);

/**
* Returns the name of an IConfigurable of a variability model
Expand Down
Loading

0 comments on commit b5dd9fe

Please sign in to comment.