<packaging>pom</packaging>
<properties>
- <annotations.version>3.0.0</annotations.version>
+ <annotations.version>3.0.1</annotations.version>
</properties>
<build>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-templates</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
static final def ADOC_FOLDER = "asciidoc"
static final def SITE_FOLDER = "site"
- static final def PNG_EXTENSION = "png";
+ static final def PNG_EXTENSION = "png"
/**
* Copies generated images to site folder
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
+ <type>pom</type>
</dependency>
<dependency>
<groupId>org.opendaylight.mdsal</groupId>
static final def MODULE_LIST_FILE_SUFFIX = "-module-config"
static final def SEPARATOR = ","
- public static void generate(project, properties, log) {
+ public static void generate(project, log) {
// module configuration file extraction
// builds project name from group,artifact and version to prevent overwriting
// while building multiple distribution project
log.info "Generating list of modules started by distribution ${projectName}"
- def activeModules = properties.getProperty(MODULES_LIST_CONTENT_PROPERTY, DEFAULT_MODULES_LIST)
+ def activeModules = project.properties.get(MODULES_LIST_CONTENT_PROPERTY, DEFAULT_MODULES_LIST)
.tokenize(SEPARATOR)
.collect { module -> module.trim() }
outputPath.toFile().mkdirs()
def outputFile = Paths.get(outputPath.toString(), "${projectName}${MODULE_LIST_FILE_SUFFIX}").toFile()
- outputFile.createNewFile();
+ outputFile.createNewFile()
log.info("Writing module configuration for distribution ${projectName} to ${outputPath}")
if (activeModules.isEmpty()) {
def jarName = "${project.artifactId}-${project.version}.jar"
def jvmParameters = "${additionalJvmParameters} -jar \$(dirname \$0)/${jarName}"
- def scriptParent = Paths.get(project.build.outputDirectory, MINIMAL_RESOURCES_FOLDER)
+ def scriptParent = Paths.get(project.build.outputDirectory as String, MINIMAL_RESOURCES_FOLDER)
scriptParent.toFile().mkdirs()
def startScriptPath = generateStartupScript(jvmParameters, log, scriptParent, scriptTemplate)
//
// This distribution does not define any own modules.
// In order to do so either distribution.modules property must be defined in distribution pom.xml,
-// containing list of desired modules to start, or this file can be directly edited with same effect.
+// containing list of desired modules to start or this file can be directly edited with same effect.
//
-// Note : Modules should be referenced by full class name, e.g: io.fd.test.SampleModule, and separated with comma.
\ No newline at end of file
+// Note : Modules should be referenced by full class name. e.g: io.fd.test.SampleModule and separated with comma.
\ No newline at end of file
<salGeneratorPath>target/generated-sources/mdsal-binding</salGeneratorPath>
<!-- common dependencies -->
- <junit.version>4.11</junit.version>
- <mockito.version>2.2.9</mockito.version>
- <hamcrest.version>1.3</hamcrest.version>
+ <junit.version>4.12</junit.version>
+ <mockito.version>2.23.4</mockito.version>
+ <hamcrest.version>2.1</hamcrest.version>
<guava.version>23.6-jre</guava.version>
- <jsr305.version>3.0.0</jsr305.version>
- <slf4j.version>1.7.21</slf4j.version>
- <jdt.version>2.1.150</jdt.version>
+ <jsr305.version>3.0.2</jsr305.version>
+ <slf4j.version>1.7.25</slf4j.version>
+ <jdt.version>2.2.200</jdt.version>
<!-- plugins -->
<checkstyle.plugin.version>3.0.0</checkstyle.plugin.version>
<checkstyle.version>8.18</checkstyle.version>
- <maven.javadoc.version>2.10.3</maven.javadoc.version>
- <jacoco.version>0.7.9</jacoco.version>
- <enforcer.version>1.4</enforcer.version>
- <maven.compile.plugin.version>3.5.1</maven.compile.plugin.version>
- <maven.bundle.version>3.0.1</maven.bundle.version>
+ <maven.javadoc.version>3.0.1</maven.javadoc.version>
+ <jacoco.version>0.8.2</jacoco.version>
+ <enforcer.version>3.0.0-M2</enforcer.version>
+ <maven.compile.plugin.version>3.8.0</maven.compile.plugin.version>
+ <maven.bundle.version>4.1.0</maven.bundle.version>
<!-- checkstyle -->
<checkstyle.header.file>APACHE_HEADER.txt</checkstyle.header.file>
<asciidoctorj.diagram.version>1.3.1</asciidoctorj.diagram.version>
<!-- groovy -->
- <maven.groovy.version>2.0</maven.groovy.version>
- <groovy.version>2.4.7</groovy.version>
- <groovy.eclipse.compiler.version>2.9.2-01</groovy.eclipse.compiler.version>
- <groovy.eclipse.batch.version>2.4.3-01</groovy.eclipse.batch.version>
+ <maven.groovy.version>1.6.2</maven.groovy.version>
+ <groovy.version>2.5.5</groovy.version>
+ <groovy.eclipse.compiler.version>3.3.0-01</groovy.eclipse.compiler.version>
+ <groovy.eclipse.batch.version>2.5.6-02</groovy.eclipse.batch.version>
<docs.base.url>https://nexus.fd.io/content/sites/site</docs.base.url>
<docs.hc.folder>io/fd/honeycomb</docs.hc.folder>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-all</artifactId>
+ <artifactId>hamcrest</artifactId>
<version>${hamcrest.version}</version>
<scope>test</scope>
</dependency>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven.javadoc.version}</version>
<configuration>
+ <source>8</source>
<additionalparam>-Xdoclint:none</additionalparam>
</configuration>
<executions>
<version>${maven.compile.plugin.version}</version>
<configuration>
<!-- Use google's error-prone static analysis-->
- <compilerId>javac-with-errorprone</compilerId>
+ <!-- TODO reenable errorprone once it is able to be built using java 11 -->
+ <!--<compilerId>javac-with-errorprone</compilerId>-->
<forceJavacCompilerUse>true</forceJavacCompilerUse>
<showWarnings>true</showWarnings>
<source>1.8</source>
<target>1.8</target>
</configuration>
- <dependencies>
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-compiler-javac-errorprone</artifactId>
- <version>2.5</version>
- </dependency>
- <!-- override plexus-compiler-javac-errorprone's dependency on
- Error Prone with the latest version -->
- <dependency>
- <groupId>com.google.errorprone</groupId>
- <artifactId>error_prone_core</artifactId>
- <version>2.0.9</version>
- </dependency>
- </dependencies>
+ <!--<dependencies>-->
+ <!--<dependency>-->
+ <!--<groupId>org.codehaus.plexus</groupId>-->
+ <!--<artifactId>plexus-compiler-javac-errorprone</artifactId>-->
+ <!--<version>2.8.5</version>-->
+ <!--</dependency>-->
+ <!--<!– override plexus-compiler-javac-errorprone's dependency on-->
+ <!--Error Prone with the latest version –>-->
+ <!--<dependency>-->
+ <!--<groupId>com.google.errorprone</groupId>-->
+ <!--<artifactId>error_prone_core</artifactId>-->
+ <!--<version>2.3.2</version>-->
+ <!--</dependency>-->
+ <!--</dependencies>-->
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
</dependencies>
</plugin>
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
<version>${maven.groovy.version}</version>
<executions>
<!-- Generate Readme.adoc if not present -->
</goals>
<configuration>
<!-- Generate module adoc documentation -->
- <source>
- io.fd.honeycomb.common.scripts.ReadmeGenerator.checkReadme(project, properties, log)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.common.scripts.ReadmeGenerator
+ ReadmeGenerator.checkReadme(project, properties, log)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
<!-- Fix generated html -->
</goals>
<configuration>
<!-- Site generates wrong link to Readme.html, trying to point to Readme.html at root -->
- <source>
- io.fd.honeycomb.common.scripts.ReadmeGenerator.fixSite(project, properties, log)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.common.scripts.ReadmeGenerator
+ ReadmeGenerator.fixSite(project, properties, log)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
<!-- copy generated schema pictures -->
</goals>
<configuration>
<!-- Copies generated schema pictures from ascii-doctor folders to site folder-->
- <source>
- io.fd.honeycomb.common.scripts.AsciiDocImgForwarder.copyGeneratedImages(project, properties, log)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.common.scripts.AsciiDocImgForwarder
+ AsciiDocImgForwarder.copyGeneratedImages(project, properties, log)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
</executions>
<dependencies>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ <type>pom</type>
+ <version>${groovy.version}</version>
+ </dependency>
<dependency>
<groupId>io.fd.honeycomb.doc</groupId>
<artifactId>asciidoc-scripts</artifactId>
<artifactId>maven-bundle-plugin</artifactId>
</plugin>
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
</plugin>
</plugins>
<version>${guice.version}</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <version>3.24.1-GA</version>
+ </dependency>
</dependencies>
</dependencyManagement>
</plugin>
<!-- Generate module to yang provider index -->
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
+ <version>${maven.groovy.version}</version>
<executions>
<execution>
<id>generate-yang-index</id>
<goal>execute</goal>
</goals>
<configuration>
- <source>
- io.fd.honeycomb.common.scripts.ModuleYangIndexGenerator.generateIndexForPresentModules(project, log)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.common.scripts.ModuleYangIndexGenerator
+ ModuleYangIndexGenerator.generateIndexForPresentModules(project, log)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
</executions>
<plugins>
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
</plugin>
</plugins>
<!-- Generate shell script -->
<!-- Extract modules started by distribution -->
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
<executions>
<execution>
<id>start-scripts-generation</id>
<goal>execute</goal>
</goals>
<configuration>
- <source>
- io.fd.honeycomb.common.scripts.StartupScriptGenerator.generate(project, properties, log)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.common.scripts.StartupScriptGenerator
+ StartupScriptGenerator.generate(project, properties, log)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
<execution>
<goal>execute</goal>
</goals>
<configuration>
- <source>
- io.fd.honeycomb.common.scripts.ModulesListGenerator.generate(project, properties, log)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.common.scripts.ModulesListGenerator
+ ModulesListGenerator.generate(project, log)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
<execution>
<goal>execute</goal>
</goals>
<configuration>
- <source>
- io.fd.honeycomb.common.scripts.ModuleYangIndexGenerator.pairDistributionModulesWithYangModules(project, log)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.common.scripts.ModuleYangIndexGenerator
+ ModuleYangIndexGenerator.pairDistributionModulesWithYangModules(project, log)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
</executions>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
+ <version>2.22.0</version>
<configuration>
<!--http://stackoverflow.com/questions/18107375/getting-skipping-jacoco-execution-due-to-missing-execution-data-file-upon-exec-->
- <argLine>${argLine} -Djava.security.egd=file:${random.seed.file}</argLine>
+ <argLine>${argLine} -Djava.security.egd=file:${random.seed.file} --illegal-access=permit</argLine>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<properties>
<!-- groovy -->
- <maven.groovy.version>2.0</maven.groovy.version>
- <groovy.version>2.4.7</groovy.version>
- <groovy.eclipse.compiler.version>2.9.2-01</groovy.eclipse.compiler.version>
- <groovy.eclipse.batch.version>2.4.3-01</groovy.eclipse.batch.version>
+ <maven.groovy.version>1.6.2</maven.groovy.version>
+ <groovy.version>2.5.5</groovy.version>
+ <groovy.eclipse.compiler.version>3.3.0-01</groovy.eclipse.compiler.version>
+ <groovy.eclipse.batch.version>2.5.6-02</groovy.eclipse.batch.version>
<odl.yang-binding.version>0.13.2</odl.yang-binding.version>
</properties>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-templates</artifactId>
+ <version>${groovy.version}</version>
</dependency>
<dependency>
<groupId>org.opendaylight.mdsal</groupId>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.0</version>
<!-- 2.8.0-01 and later require maven-compiler-plugin 3.1 or higher -->
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
<dependencies>
<dependency>
<version>${groovy.eclipse.compiler.version}</version>
</dependency>
<!-- for 2.8.0-01 and later you must have an explicit dependency on groovy-eclipse-batch -->
+ <!-- https://mvnrepository.com/artifact/org.codehaus.groovy/groovy-eclipse-batch -->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>${groovy.eclipse.batch.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ <version>${groovy.version}</version>
+ <type>pom</type>
+ </dependency>
</dependencies>
</plugin>
</plugins>
<name>${project.artifactId}</name>
<properties>
- <jaxb-api.version>2.2.12</jaxb-api.version>
+ <jaxb-api.version>2.4.0-b180725.0427</jaxb-api.version>
</properties>
<dependencies>
import javax.xml.bind.annotation.XmlRootElement;
/**
- * <yang-modules-whitelist> <modules> <module> <package>io.fd.aaa.bbb.ccc</package> <description>XYZ</description>
- * </module> </modules> </yang-modules-whitelist>
+ * <yang-modules-whitelist> <modules> <module> <package>io.fd.aaa.bbb.ccc</package> <description>XYZ</description>
+ * </module> </modules> </yang-modules-whitelist>
*/
@XmlRootElement
public class YangModuleWhitelist {
<name>${project.artifactId}</name>
<properties>
- <jaxb-runtime.version>2.2.11</jaxb-runtime.version>
+ <jaxb-runtime.version>2.3.2</jaxb-runtime.version>
<slf4j-simple.version>1.7.25</slf4j-simple.version>
</properties>
<artifactId>jaxb-runtime</artifactId>
<version>${jaxb-runtime.version}</version>
</dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ <version>1.3.2</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.4.0-b180725.0427</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-impl</artifactId>
+ <version>2.4.0-b180830.0438</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-core</artifactId>
+ <version>2.3.0.1</version>
+ </dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<artifactId>guava</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-core</artifactId>
- <version>1.3</version>
- <scope>test</scope>
- </dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
+import com.google.common.collect.ImmutableSet;
import java.nio.file.Paths;
import java.util.List;
-import org.hamcrest.CoreMatchers;
import org.junit.Before;
import org.junit.Test;
moduleA.setDescription("desc");
moduleB.setPckg("module.b.package");
-
- assertThat(modules, CoreMatchers.hasItems(moduleA, moduleB));
+ assertTrue(modules.containsAll(ImmutableSet.of(moduleA, moduleB)));
}
}
\ No newline at end of file
@Test(expected = IllegalStateException.class)
public void testPersistFailure() throws Exception {
- doThrow(IOException.class).when(schemaService).getGlobalContext();
+ doThrow(IllegalStateException.class).when(schemaService).getGlobalContext();
final PersistingDataTreeAdapter.JsonPersister jsonPersister =
new PersistingDataTreeAdapter.JsonPersister(tmpPersistFile, schemaService);
// Nothing
<artifactId>mdsal-netconf-connector</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
<build>
<properties>
<!-- groovy -->
- <maven.groovy.version>2.0</maven.groovy.version>
- <groovy.version>2.4.7</groovy.version>
- <groovy.eclipse.compiler.version>2.9.2-01</groovy.eclipse.compiler.version>
- <groovy.eclipse.batch.version>2.4.3-01</groovy.eclipse.batch.version>
+ <maven.groovy.version>1.6.2</maven.groovy.version>
+ <groovy.version>2.5.5</groovy.version>
+ <groovy.eclipse.compiler.version>3.3.0-01</groovy.eclipse.compiler.version>
+ <groovy.eclipse.batch.version>2.5.6-02</groovy.eclipse.batch.version>
</properties>
<modelVersion>4.0.0</modelVersion>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.0</version>
<!-- 2.8.0-01 and later require maven-compiler-plugin 3.1 or higher -->
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
<dependencies>
<dependency>
<version>${groovy.eclipse.compiler.version}</version>
</dependency>
<!-- for 2.8.0-01 and later you must have an explicit dependency on groovy-eclipse-batch -->
+ <!-- https://mvnrepository.com/artifact/org.codehaus.groovy/groovy-eclipse-batch -->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
+ <type>pom</type>
</dependency>
</dependencies>
</project>
\ No newline at end of file
<!-- Static version, we don't want it to be deployed anyway-->
<version>1.0.0</version>
<properties>
- <commons-csv.version>1.4</commons-csv.version>
+ <commons-csv.version>1.6</commons-csv.version>
<honeycomb.version>1.19.04-SNAPSHOT</honeycomb.version>
- <maven.groovy.version>2.0</maven.groovy.version>
- <groovy.version>2.4.7</groovy.version>
- <groovy.eclipse.compiler.version>2.9.2-01</groovy.eclipse.compiler.version>
- <groovy.eclipse.batch.version>2.4.3-01</groovy.eclipse.batch.version>
+ <maven.groovy.version>1.6.2</maven.groovy.version>
+ <groovy.version>2.5.5</groovy.version>
+ <groovy.eclipse.compiler.version>3.3.0-01</groovy.eclipse.compiler.version>
+ <groovy.eclipse.batch.version>2.5.6-02</groovy.eclipse.batch.version>
</properties>
<!-- to be runnable from command line -->
<packaging>jar</packaging>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
+ <type>pom</type>
</dependency>
<dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <version>2.19.1</version>
+ <version>2.22.0</version>
<configuration>
<skipTests>true</skipTests>
+ <!-- allow reflection for documentation -->
+ <argLine>--illegal-access=permit</argLine>
</configuration>
</plugin>
<!-- generate scripts for benchmarks -->
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
<executions>
<!-- script for on-rest memory benchmark -->
<execution>
</goals>
<!-- 0 data samples == empty config file, therefore same as honeycomb on rest -->
<configuration>
- <source>
- io.fd.honeycomb.benchmark.script.MemoryBenchmarkStartupScriptGenerator.generateWithDataScript(project, log, "memory-benchmark-on-rest-out", 0)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.benchmark.script.MemoryBenchmarkStartupScriptGenerator
+ MemoryBenchmarkStartupScriptGenerator.generateWithDataScript(project, log, "memory-benchmark-on-rest-out", 0)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
<!-- script for memory benchmark with 1000 nodes in config data-->
<goal>execute</goal>
</goals>
<configuration>
- <source>
- io.fd.honeycomb.benchmark.script.MemoryBenchmarkStartupScriptGenerator.generateWithDataScript(project, log, "memory-benchmark-with-data-out", 1000)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.benchmark.script.MemoryBenchmarkStartupScriptGenerator
+ MemoryBenchmarkStartupScriptGenerator.generateWithDataScript(project, log, "memory-benchmark-with-data-out", 1000)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
<!-- script for memory benchmark with 10000 nodes in config data-->
<goal>execute</goal>
</goals>
<configuration>
- <source>
- io.fd.honeycomb.benchmark.script.MemoryBenchmarkStartupScriptGenerator.generateWithDataScript(project, log, "memory-benchmark-with-data-out", 10000)
- </source>
+ <scripts>
+ <script>
+ <![CDATA[
+ import io.fd.honeycomb.benchmark.script.MemoryBenchmarkStartupScriptGenerator
+ MemoryBenchmarkStartupScriptGenerator.generateWithDataScript(project, log, "memory-benchmark-with-data-out", 10000)
+ ]]>
+ </script>
+ </scripts>
</configuration>
</execution>
</executions>
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ </dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-all</artifactId>
+ <artifactId>hamcrest</artifactId>
<scope>test</scope>
</dependency>
<dependency>
assertThat(activeModules, hasItem(isA(Modules.ChildModule3.class)));
}
- @Test(expected = IllegalStateException.class)
+ @Test
public void testLoadActiveModulesFailed() {
final ImmutableList rawResources = of(
"// this should be skipped",
"// io.fd.honeycomb.infra.distro.Modules$ChildModule1",
" io.fd.honeycomb.infra.distro.Modules$ChildModule2",
- "### io.fd.honeycomb.infra.distro.Modules$ChildModule3 ",// it should fail because of this
+ "io.fd.honeycomb.infra.distro.Modules$ChildModule3 ",// it should fail because of this
"io.fd.honeycomb.infra.distro.Modules$ChildModule3",
"io.fd.honeycomb.infra.distro.Modules$NonModule"
);
import org.slf4j.LoggerFactory;
/**
- * Starts & stops notification producer dependencies on demand.
+ * Starts & stops notification producer dependencies on demand.
* Uses {@link DOMNotificationSubscriptionListenerRegistry} to receive subscription change notifications.
*/
@ThreadSafe
<artifactId>commons-lang3</artifactId>
<version>3.8.1</version>
</dependency>
-
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <scope>compile</scope>
+ </dependency>
</dependencies>
</project>
\ No newline at end of file
/**
* Generic initializer.
- * <p/>
+ *
* Capable of invoking 0..n edits as a result of existing operational data.
*/
@Beta
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-all</artifactId>
+ <artifactId>hamcrest</artifactId>
<scope>test</scope>
</dependency>
<dependency>
/**
* Composite implementation of {@link ListReader} able to place the read result into parent builder object intended
* for list node type.
- * <p/>
+ *
* This reader checks if the IDs are wildcarded in which case it performs read of all list entries. In case the ID has a
* key, it reads only the specified value.
*/
/**
* Simple reader registry able to perform and aggregated read (ROOT read) on top of all provided readers. Also able to
* delegate a specific read to one of the delegate readers.
- * <p/>
- * This could serve as a utility to hold & hide all available readers in upper layers.
+ *
+ * This could serve as a utility to hold & hide all available readers in upper layers.
*/
public final class CompositeReaderRegistry implements ReaderRegistry {
/**
* Create {@link CompositeReaderRegistry} with Readers ordered according to submitted relationships.
- * <p/>
+ *
* Note: The ordering only applies between nodes on the same level, inter-level and inter-subtree relationships are
* ignored.
*/
}
@Override
- public boolean canProcess(@Nonnull InstanceIdentifier<?> instanceIdentifier) {
+ public boolean canProcess(@Nonnull final InstanceIdentifier<? extends DataObject> instanceIdentifier) {
if (isWildcarded) {
final Class<D> parent = delegate.getManagedDataObjectType().getTargetType();
for (InstanceIdentifier.PathArgument pathArgument : instanceIdentifier.getPathArguments()) {
/**
* ReadCustomizers which want to participate in the initializing process need to implement this interface.
- * <p/>
+ *
* It is triggered after Honeycomb initializes the plugins to give them a change
* reconcile(put data in HC in sync with underlying layer) with the underlying layer.
*/
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-all</artifactId>
+ <artifactId>hamcrest</artifactId>
<scope>test</scope>
</dependency>
<dependency>
/**
* Transform a keyed instance identifier into a wildcarded one.
- * <p/>
+ *
* ! This has to be called also for wildcarded List instance identifiers
* due to weird behavior of equals in InstanceIdentifier !
*/
}
/**
- * Returns {@link Optional<T>} of dump
+ * Returns {@link Optional} of dump
*
* @param identifier identifier for origin of dumping context
* @param cache modification cache of current transaction
* @throws ReadFailedException if execution of dumping request failed
- * @returns If present in cache ,returns cached instance, if not, tries to dump data using provided executor,
+ * @return If present in cache ,returns cached instance, if not, tries to dump data using provided executor,
* otherwise Optional.empty()
*/
public Optional<T> getDump(@Nonnull final InstanceIdentifier<?> identifier,
}
/**
- * Returns {@link Optional<T>} of dump
+ * Returns {@link Optional} of dump
*
* @param identifier identifier for origin of dumping context
* @param cache modification cache of current transaction
* @param dumpParams parameters to configure dump request
* @throws ReadFailedException if execution of dumping request failed
- * @returns If present in cache ,returns cached instance, if not, tries to dump data using provided executor,
+ * @return If present in cache ,returns cached instance, if not, tries to dump data using provided executor,
* otherwise Optional.empty()
*/
public Optional<T> getDump(@Nonnull final InstanceIdentifier<?> identifier,
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.0</version>
+ <configuration>
+ <source>1.8</source>
+ <target>1.8</target>
+ </configuration>
</plugin>
<plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
/**
* Example of an aggregated access interface.
- * <p/>
+ *
* Shared by all the customizers hiding the ugly details of our data management.
*
* TODO update javadoc
/**
* Simple example of class handling Crud operations for plugin.
- * <p/>
+ *
* No real handling, serves just as an illustration.
*
* TODO update javadoc
/**
* Class containing static configuration for ${rootArtifactId} module,<br>
* either loaded from property file ${rootArtifactId}.json from classpath.
- * <p/>
+ *
* Further documentation for the configuration injection can be found at:
* https://github.com/yyvess/gconf
*/
/**
*
* Initialize configuration data based on operational data.
- * <p/>
+ *
* Very useful when a plugin is initiated but the underlying layer already contains some operation state.
* Deriving the configuration from existing operational state enables reconciliation in case when
* Honeycomb's persistence is not available to do the work for us.